1. Bear the impact of your decisions in mind
What you do every day is probably interesting and exciting, especially if you’re faced with challenges you don’t immediately know how to tackle. Remember that, while technical problems almost always have a good solution and technical errors can be fixed, issues related to the people you work with can cause permanent damage. If you are mentoring someone, for example, and your inattention causes them to become frustrated with their work, you might not be able to get them excited about it again. This can have an impact on their whole career. Make sure you do your best and set a good example for the less experienced developers to follow.
2. It’s best to have a common goal with the team you manage
If you find yourself leading a team, you might suddenly be the boss of people you used to be on equal terms with. That’s a tricky situation. One helpful trick is to make sure your goals align with those of your team. If you’re all naturally moving in the same direction, true synergy can happen. If your goals differ, on the other hand, you should put more effort into building and maintaining a good relationship with your team.
3. Find satisfaction in your work
Many people get bogged down with repetitive work or managerial tasks. When you’re starting to feel burnt out, remember that even the smallest decision can have an impact on your team. You are making a difference.
If I feel that I’m doing a good job, I find satisfaction in it. It’s the same now that I’m a tech leader. It doesn’t matter what I’m doing exactly, as long as I know it’s valuable and that I’m doing it well.
4. Find ways to improve company-wide processes
It’s always worth your while to make improvements to company processes. One example is automation. It can make the most mundane and time-consuming tasks (like scheduling a group meeting) simple and fast. Why not have a Slack bot do 99% of the job for you? It’s not like you’re using your hard-earned, specialised skills to wrangle a bunch of team members into a room for a conversation.
There are many similar examples where automation could save people time and help them stay sane in today’s busy world. We’re looking into doing a small revolution at Netguru and introducing ‘chatops’. In simple terms, chatops means using chatbots to run certain processes in the company. It’s about as cool as it sounds, but it needs to be implemented well. Remember Kaizen? We want to work smarter, not harder.
5. Remember that you’re making a real difference
Many people these days realise they are unhappy because their jobs just aren’t rewarding. If that sounds familiar, remember the scale of impact you have as a senior developer. You directly influence the company you work for, the client, project stakeholders, your team, and other teams you cooperate with. Isn’t it amazing to know that a choice you’d made helped the company earn more money, or saved the client form making a big mistake? Even just by doing your job you’re an example to less experienced developers, and you can help them shape their careers.
6. Don’t be afraid of surprises
At this point in your career, it’s probably not that easy to surprise you. But when it does happen, remember to enjoy it. Many people get a bit locked into their own visions of themselves, career-wise. That’s okay – it’s certainly a source of comfort – but don’t let yourself miss opportunities just because they require you to try something new.
7. Maintain old skills and develop new ones
I wake up early every morning and squeeze in some professional development time before work. I want to maintain my software engineering skills now that I do less of that at work. It’s not a hardship for me, because programming is my hobby. It’s important to keep your skills sharp, and it’s also crucial to learn new things.
Read books, analyse others’ mistakes, but don’t avoid learning by doing. Sometimes you just need to try something out to make sure it’ll work for you. This process never truly ends. When you become a senior developer, you can’t always learn from external sources like courses or tutorials. Nothing beats experience. And remember, mistakes are an inherent part of the learning process. As a developer, you might be used to testing things out in a sandbox, but as a leader and a mentor, you’ll need to work with the human version of a production environment. Remember that no one expects you to be infallible.
8. Know the context you work in
You don’t work in a vacuum. Your actions can have impact on many other teams: HR, marketing, project management, and so on. Because of this, you need to understand most of your company’s core processes. No one wants you to be an expert in everything, of course. Showing a healthy interest in what others do and being aware of how you’re impacting them should be enough.
9. Work at a company that helps you grow
You don’t have to settle for a boring position that’ll cause you to burn out. Find a company that’ll have you do what you want to do and what fulfills you. Netguru, for example, is great for people who have their own vision for their career paths. These visions can usually become a reality thanks to the company’s flexibility. We don’t push people too hard, which means people with less drive may struggle, but those who know what they want have plenty of opportunity for growth.
10. Share your knowledge with the world - it’ll pay off sooner than you think
Try creating useful content: blog posts, conference presentations, meetups. You might have less time on your hands in the future and end up regretting not taking action now. Sharing your knowledge is extremely rewarding and really pays off. You’ll meet amazing people, find friends, learn a lot through teaching, and you’ll make yourself happy.
I hope you liked these ten tips on how to manage your career as a senior developer. If you’re interested in the person behind these nuggets of knowledge, check out this article, in which I talk about the career of a tech leader, taking a close look at its challenges and benefits.