Hacker News new | ask | show | jobs
by TrueDuality 900 days ago
I'm doing the CTO thing for a <10 person start-up that is actively building our initial product. I am rapidly and randomly switching from anywhere from 0-80% coding during any given week depending on what my team and the company needs. Probably closer to 20-30% on average.

I come from a history of being an individual contributor (15 years of that) and I would say overall as I've gotten more senior in my positions I've done less coding as a % of my time, but the coding that I have been doing is individually more impactful or sensitive.

The non-coding part of my time has gone more into mentoring, reviewing, design, business discussions & goal setting, policy writing and implementation, team organization & management, and interactions with operations.

I think that about covers it, but feel free to follow up if you have anymore questions.

1 comments

I’m sure that being an IC for 15years helped you develop the technical sharpness that allows you to make decisions and do deep dives occasionally.

I want to be in the 70-90% of coding now because as I improve and move up I will not have had a stretch of deep programming experience.

If you can think of anything, what would you advise me to do?

My team is pretty small right now so yes I do end up doing a fair amount of technical decisions but at my last spot, I was more of a head engineer over groups of engineers and I really need to learn to let the teams below me make their own technical decisions only stepping in when there was a conflict, they were explicitly asking for guidance, or in a few rare cases where I could see they were clearly going down a wrong a road.

I think I would need a bit more information about your current seniority and skill levels before I could give you more specific direction. There is always the default answer if you want to move up higher that communication skills are important, and that's true but what I don't see as often is developing the skill to let decisions go and to not only find ways to live with them but actually accept those decisions and move forward with them.

Absolutely speak up if you disagree, and communicate clearly the prior experiences that is helping guide your decision. Talk about your assumptions and where you think future pitfalls might be. If your team or manager decides to go down a road you don't agree with or don't think is optimal... Let it go. Work with it. Try and accept that as a path forward and embrace it. You might not have the full picture, it might be a legitimately better strategy, or you might be right. In any of those scenarios though fighting against the current, trying to go rogue to prove your path is correct. Those will only lead to ill-will. If it does turn out to be the wrong path, don't play the "I told you so card", take the high road and just move forward.

A lot of engineers, myself included, look back at prior decisions more than looking forward. Reflection is important, and lessons can be learned but we're there to build things, not be right all the time. The bigger your team the bigger and more intense things you can build, but only if you're all working with the current of development.

The more you work with your team, the more they trust you and as you gain in seniority you will have a peak of silent "I told you so moments", that's usually when I've found it was time for me to go up to the next level of seniority as its probably time to start mentoring the people around you.

None of this is about getting more coding time, but I don't think I've ever really optimized for that. Maybe think about what you're trying to get out of that coding time. Maybe what you're actually looking for is unbroken focus time, that I have optimized for but also involves working with your team. Communicate with your team that you would like more focus time, propose things like protected afternoons (meetings only in the morning) or meeting free days (I've found Tues/Thurs usually work best for this).

If you provide me with a bit more detail I might be able to give less general advice.

I’m currently a mid-level SRE engineer cornering the senior level. My goal is to reach the principal/distinguished levels.

I’ve found myself in the I told you so moments in my team and have had an informal heads-up about a promotion. It’s too soon to even be talking about this, but I hope it gives you enough context as I’m looking forward to you advice because your last comment was really really good. Thank you for taking the time.

I’m not in Silicon Valley or any other tech hub, I’m in a small country in Africa and want to put a dent in the engineering world. A cliché I take very seriously :).