4 ms·
>You should always drive engineering excellence, but you shouldn't be driving day to day decisions/execution unless the company is very small and you are still
by CameronBarre 7y ago
>You should always drive engineering excellence, but you shouldn't be driving day to day decisions/execution unless the company is very small and you are still having to play architect, coder etc. Once you have team leads and teams, you should be pulling back and setting direction and standards but not dictating implementations etc.
I'm going through this on a smaller scale and have been evolving through my responsibilities for around three years.
I started as the only engineer with total control over a next generation system for a client, then for the last year and a half I have been making the painful transition from solving problems myself to trusting others to solve them.
I've grown a small team from nothing to three highly reliable members by doing much of what you suggest and following similar themes.
My responsibilities have been partitioned among them, group methods and practices have developed between us all, and finally, there is a capable group of people to carry on and evolve my hard work, which is now becoming their hard work. One of the best parts is that they actually produce higher quality work than I do, because I create buffers from business pressure and give them longer runways, so there is more time for attention to detail.
I'm in the process of handing over my duty as team lead to one of them and I'm pushing my way into helping our CTO with product design (and essentially anything else that comes up), where I hope to leverage my understanding of our various teams and business context.
I am evolving my role for the third or forth time by now, and I am doing it out of necessity, because, every hour of my time typically goes toward controlling dozens of hours of other people's time and so without an engaging task like writing code, my days feel endless, because there isn't that much I can do at any given moment. Jumping into my teams code and working on requests directly is actually one of the more self destructive things I can get into lately.
Therefore, I find product design highly engaging, it makes the hours fly (almost as good as writing code) and am sending the message that I'm here to help at a higher level than I ever have previously - apart from growing half of the environment for three years.
I don't even want a career by the way, I'm a remote 1099 freelancer if you can believe it. We have a really interesting team composed entirely of freelancers, but we seem to stick together.
- davismwfl 7y agoThat's awesome, and also IMO one of the hardest transitions to do because it feels like you go from being productive most days to having weeks on end where you aren't sure you can point to one thing you "accomplished". Yet, your accomplishments are the teams accomplishments if you are supporting them etc. So you have accomplished far more than you would've have by yourself but it sure doesn't always feel that way. :) Congrats on finding a way that works for you. To me 1099 vs employee is a payroll not capabilities or contribution distinction. I am 100% remote from my team right now as well, if you can work with people it is not really any different than sitting in an office for most of what we do. With all the collaboration tools anymore, designs can be shared online, Zoom meetings make things easy and Slack etc give you that real-time quick connect when you need it. IMO hardest thing to manage remote teams over is delivery expectations and timelines given people spread across timezones can cause delays just because of their hours of work if you don't plan well. *edit - word
- CameronBarre 7y agoSo true. Thanks for the kind works :)