by Shaun Michael Stone
These are the reasons Software Engineers don’t leave their jobs
Please note: This article is my own opinion and not reflective of any company’s views.
Tech companies are always trying to figure out how to keep their employees happy in their jobs. It’s no easy feat though, and the people in tech I’ve spoken to stay at a particular job for around 18 months or less on average. Whenever I ask any of them what is the reason, it usually stems from the same problems.
Here are seven reasons people actually stay at their jobs that I feel matter. Of course, salary is important but it doesn’t stand on its own feet without the following.
1. Getting along with the manager
They say people don’t leave their jobs, they leave their managers. This couldn’t be more true. You should be able to relate to your manager, see eye-to-eye and feel like you can trust one-another. Your manager should stick up for you and you should feel like they are on your side. They should speak to you with respect, dignity and not order you around, abuse their level of control or insult you. Some of the best managers I’ve had are also great friends of mine to this day.
Management is probably one of the hardest things to do. When I say it’s hard, I mean it’s hard if you want to be considered a good manager. You need to work extremely hard for your team, manage expectations and keep morale high… It’s not for everyone.
On my first day, my manager introduced me to everyone, organized a team lunch and we all clinked drinks with the words, ‘Welcome to the team, Shaun’. I have weekly one-to-one meetings to see how I am doing if I have any problems, and always feel reassured about the work I do. These are the little things that make a difference.
2. My ideas and contributions matter
This may have more to do with the fact that I am in a senior position now, but I feel like the ideas others members on the team and I actually push for do make their way into our applications or our workflow. It may be something to do with the company not being a large corporation, which generally tends to contain a lot of strict regulation for change.
A lot of people get fed up with the fact that they cannot initiate change in a company. Young minds bring fresh ideas that should be embraced, but most of the time they’re not, and that is a shame. When a company has a set way of doing things, it’s too risky for them to change because everyone is too comfortable. Companies have to take risks to move forward and innovate.
When young minds feel like they cannot make a difference they lose their passion and drive for that company. Then they decide to find somewhere that will allow them to innovate. Usually, a smaller company such as a startup gives them that opportunity.
3. I have the flexibility to work from home when I need to
We spend most of our lives at work. For me, I commute on the train to London and it takes me approximately fifty minutes door to door. When I lived with my parents a while ago, I used to commute to London and it took me an hour and forty-five minutes each way. It was horrendous, but I managed to read a plethora of books on my journey. Even every edition of Game of Thrones, so it wasn’t a huge waste of time.
My boss at the time said ‘you can work from home now and again but of course don’t abuse it’, which is understandable. A lot of trust is being placed on you when you are not in plain sight, but I think allowing you that flexibility when you have to wait home for the boiler to be fixed by the local plumber is a godsend.
I have found times where working from home has actually increased my productivity. I have fewer distractions and it’s quiet. I don’t need to put on my headphones and I can focus on my tasks much better. The downside is you don’t have that real-time in-the-flesh collaboration with colleagues that I think is equally important.
4. My colleagues are friendly and welcoming
“My colleague once messaged me on HipChat… he was sitting next to me.”
Yes, a friend told me that once. It’s a real shame that people in tech get so comfortable staring at that squared energy of light all day without interacting with one another. There have been days where I have done the same because I had deadlines and didn’t have time to talk, and I came away that day feeling a bit low. We are naturally social beings, so taking the time out of your day to speak with someone - even about something not related to work - can make you feel better.
We arranged a slack channel for anyone who wants to come to the park with us for lunch and we have a good laugh. We arrange nights out in London too with votes on where we should go. Not only that, but we also have a web architecture review meeting for all of the front-end engineers so we can bring up any technical problems we are currently facing in our own teams. Anyone can bring up a problem or suggest a solution that is then discussed among us all. We then have a vote at the end where everyone is respectful of each other’s opinions on the subject.
5. The work is interesting and I’m always learning
When we are passionate about our work and the product we are contributing to we are likely enjoying our job. Currently, we are building a design system built on a strong foundation of typography, colors, four-pixel spacing, and reusable React components.
We use Storybook and the idea of Atomic design to build atomic, molecular and organism components that get built up into templates. This means we can view living, breathing prototypes of our pages. We don’t have to log in to our real application and apply a form of logical state to see how a specific page looks. Instead, we view it in Storybook and because it’s component driven, we know the page would look like that in production. Powerful stuff, and I love working on it. To me, it’s interesting to make our products consistent and easy to build.
When a developer feels like they aren’t learning anything, it could mean that the company is too comfortable and not innovating. The developer is probably doing some maintenance to some legacy code and dealing with the complications of said legacy code. Instead, they could be given the freedom to either find ways to reduce technical debt, identify new solutions to existing problems or work on some exciting new projects where they can work with new technologies to keep their skills sharp. Something that keeps them stimulated.
6. The work you do is recognized and appreciated by others
We naturally want to see our company grow and we want to feel like we are doing something to contribute to that growth. Whether it be keeping the servers healthy in DevOps or deploying a fast microservice in the backend, it’s good for someone to identify and appreciate how you helped make it happen.
When colleagues have the mindset that ‘well it’s your job to do that’, it is not healthy for the team. Don’t hold back from saying, ‘I like how you approached that problem.’
7. You can dress down
Nothing makes me happier than knowing I don’t have to put on a suit every day. Don’t get me wrong, I like dressing up and looking the business, but it feels good to be in casual clothing and comfortable without a tie trying to strangle me all day.
I’m an engineer. Unless I’m interacting with clients directly, I personally don’t see the need to dress up, and worry that my shirts are not ironed. Ironing a shirt is so hard…
Thanks for reading!
I would be interested to know your thoughts on what’s been discussed, so drop me a message or leave a comment. And please drop a few claps if you enjoyed this post!
Follow and reach out to me on Twitter.