Senior Software Engineer at AdRoll Group through BairesDev - former CTO @ Inaka
September 17, 2018#architecture #erlang #open-source #public-speaking
I'm a software developer from Buenos Aires, Argentina.
I'm currently working as an Erlang Developer @ AdRoll Group, but in the past, I've been a Software Architect, Tech Lead and CTO (all of them, managerial positions) twice in my career. I'm also a community manager, an active blogger, open-source enthusiast, conference organizer, and a trainer. I've done (and I still do) lots of things, all of them related to software in one way or another.
You can find much more about me at https://about.me/elbrujohalcon.
I actually had two of these transitions.
The first time, I was 23 years old and I had no more than 5 years of experience working in the same company where I got that "promotion" to Leader for the project I was working on, then Software Architect for the whole company.
I was incredibly unprepared for that change and, even when it was a great experience and an impressive challenge, in the end, it ended up having a toll on my mental health. I found someone to replace me in that company and left that job to go back to being a developer.
And I did that for a few years, but then I got "promoted" again to Director of Engineering, then CTO/Tech Lead. This time I was older and I already had the scars from my first encounter with this managerial position, so… I approached the change from a different perspective. I decided to learn what I needed to work as a manager correctly and I also decided not to stop coding (I wasn't going to write code for client projects so often, but I surely never stopped writing open-source code).
It was challenging anyway, and the actual transition was much much longer (it took me about 1.5 years to actually settle in the CTO/Tech Lead role).
You can find many of the lessons I learned in that transition here: https://slides.com/elbrujohalcon/fdtmaba10p and here: https://eventil.com/talks/o8SpVx-brujo-benavides-from-developer-to-manager-and-back-again .
I'm back to a developer role now, but I'll answer this question based on what my day-to-day looked like when I was a CTO at Inaka…
TL;DR: Meetings! Tons of meetings :P
Now, for a proper answer: My day to day used to involve a bunch of meetings (some project-related, some 1:1s, some planning meetings with the CEO - we did a lot of things together-, some with clients, some with prospect clients, etc…), most of them already scheduled before the day started. But I also used to not schedule consecutive meetings if I could avoid it. That way, in the time between meetings I did some code reviews, had some impromptu conversations with devs around the office or in slack/hipchat, played some ping-pong matches (we had ping-pong table at the office), read the news about software development and management in general (I'm a fan of RSS). In the odd times when I actually had nothing to do, I either tried to contribute to some of our open-source projects or write a blog post for the company.
What motivated me to do it every day? The most important factor was the pride I had in what our company was. Working at Inaka was amazing and the things we created were awesome, too. I was so proud of that… I still am. The team was another major factor of motivation: All the inakos (from the CEO to the devs, from the PMs to QA) were talented professionals and more importantly great people, a joy to work with.
You can find all of them in https://slides.com/elbrujohalcon/fdtmaba10p and https://eventil.com/talks/o8SpVx-brujo-benavides-from-developer-to-manager-and-back-again …
But, to pick just one: The toughest part of the CTO role for me was the yearly feedback meetings. They had all the things I stressed about as a CTO:
They usually happened in January or February and I stressed A LOT. To deal with that stress what I did was:
You can also find all of them in https://slides.com/elbrujohalcon/fdtmaba10p and https://eventil.com/talks/o8SpVx-brujo-benavides-from-developer-to-manager-and-back-again …
I think the biggest surprise for me was what I refer to in those slides as "empathy" for lack of a better word. While I worked as a programmer, there are things that are somewhat obvious (you don't submit pull requests without tests, you don't force push to master, etc.) and, as a tech lead, I was not expecting to have to explain those things to the devs. But what was obvious to me, shockingly ( :P ) was not obvious to other people. It took me a while to get adjusted to that and stop expecting people to naturally do stuff I didn't ask for before.
I think the best one is that moving from dev to manager is NOT A PROMOTION. It's a CAREER CHANGE. Being an amazing developer doesn't even get you closer to be a good manager, just like your talent as a soccer player says nothing about your quality as a soccer club manager.
And this has several implications:
Check out Tom Bartel's website: https://www.tombartel.me
Check out my blog: https://medium.com/tech-lead-talks
Subscribe to #SWLW: http://softwareleadweekly.com
Get into Rands' Slack: http://randsinrepose.com/welcome-to-rands-leadership-slack/
Basically two things:
Just look for elbrujohalcon everywhere on the internet.
If you want a single place, I would say http://about.me/elbrujohalcon