The key for engaged and happy engineers — and how Outbrain does it

Gal Ashuach
Outbrain Engineering
5 min readMar 14, 2024
Image by kirill_makes_pics

Let’s face it, we’ve all been there, right? You start a new exciting job and immediately get on an emotional roller-coaster; New technologies, frameworks, and codebase — not to mention everything that happens beyond the screen. But after some time, many of your tasks become as challenging as shooting fish in a barrel. You find yourself making a new dish with the same old ingredients you are already very familiar with; Adding a new field to a json or protobuf message, writing the same query for a new table, or designing a new API endpoint for the hundredth time isn’t very interesting, regardless of the features it serves.

From time to time you might be lucky enough to find yourself working on a refreshing task for a change, like a production issue. You get all engrossed, jumping between tabs of code, metrics, and logs. You might even communicate with colleagues (or clients 🙀). But, In a matter of hours (or days if you are really fortuitous), the smoke clears, and you’re back to your routine (or even, God forbid — frustration), longing for the next dose of production issue excitement.

Neale Donald Walsch once said — “Life begins at the end of your comfort zone”. Sometimes we just need a little change, like working on different code or using a different software stack, to get us back on the amazing roller-coaster we had at the start. And when the work becomes more interesting, we are getting more engaged and happy, just like we were when we first started.

Internal mobility to the rescue
One possible solution that can benefit both the employee and the company is internal mobility, meaning, moving employees between different teams of the same company. But here is the thing — in many companies, internal mobility isn’t always an easy task. According to Melanie Holly Pasch (Lead Communications Strategist, Gloat), “It has become easier to look for candidates outside the company than navigate the delicate dynamics of office politics and sift through the lack of visibility on most internal talent pools… The best person for the job could be right under your nose, but totally unaware of your opportunity and feeling stagnant in their current role”. According to a Microsoft survey of 20,000 people in 11 countries, organizations aren’t prioritizing internal mobility enough: “2 out of 3 employees say they would stay longer at their company if it were easier to change jobs internally …Organizations need to make internal mobility a key priority and help employees view their career as a climbing wall or playground, rather than a ladder.”

Outbrain, my current employer, is well aware of the issue of stagnation and have made it a top priority to alleviate it. I am very excited about the different strategies that we use to make sure engineers are kept engaged and hopefully happy. That is probably why the following paragraphs might sound a little bit like a pitch to join Outbrain. Rest assured, I am only writing it down because I think other companies can learn a lot from what we do here and embrace parts of it.

At Outbrain, internal mobility is part of the culture; from weekly time slots for managers to share their vacancies for in-house candidates, to internal engineering career fairs. I can see why it is hard for some companies to acknowledge that some of their employees are bored, despite their high-end product or state of the art technology, but when it comes to employee retention — Outbrain is definitely putting its ego aside.

Afraid of commitment? Take a swap task with no strings attached
Personally, even without leaving my team, I had a relatively sizeable amount of opportunities to work outside my usual scope, usually via swap tasks. ‘Swap task’ is Outbrain’s term for an inter-team assignment. Swap tasks are usually as self contained as possible, and require very little prior knowledge about the team’s domain. They are great opportunities to “get some fresh air” without making harsh decisions, exchange knowledge between teams, and can be a preliminary step before joining a team. Any team can offer them, and anyone can take them, as long he or she has a relevant toolbox.

Working on a swap task is an exhilarating experience. For instance, improving the double dispatch mechanism for the Cassandra client I usually used as a black box gave me a new point of view (+ a new feature to use “back at home”), and automating a manual audit tool improved the work of my teammates ( + allow me to finally work with a colleague I only knew from coffee talks). Everytime I take a swap task I learn something new about the system from a new point of view, which makes me a better senior developer.

Another means for keeping the fire alive is partial assignment. During my time in Outbrain, I was part time assigned twice to a different team (one of them is still on going as I type). The first time was about a year ago when I was asked to spend 50% of a quarter for a different team under a manager we’ll call Rhonda.

New manager — new opportunities
Rhonda set up a meeting with me and honestly described her dilemma for task selection. Simple tasks might be less interesting or impactful, but they have softer deadlines and require less mentoring and shorter onboarding, which was pretty important as the whole reason I joined the team was that they were understaffed. I ended up doing mostly tech debts, which to be frank was somewhat more enjoyable than one would expect. It would seem that even the simplest tasks are much more demanding when they are out of your comfort zone. When the time was up, I said my goodbyes and asked Rhonda to count me in if she has any interesting swap tasks in the future.

If you are a developer with an opportunity to do some work outside your regular scope — do it. If you are a team leader with an employee who seems bored, or asking for diversity in their tasks — I highly recommend trying a ‘swap task’ model. My experiences taught me that such activities usually benefit the employee, both teams, and the organization as a whole. It doesn’t have to be complex nor impactful — any contribution would do.

I am so happy to work for an organization that not only allows, but truly supports and encourages inner mobility. One of the most meticulous developers I ever met joined our team after a (very successful) swap task, and another truly great guy (and I am not just saying that because he is one of the reviewers of this post) is part time assigned to us. For me, that is one of the main reasons I broke my longest time in the same company record here at Outbrain.

--

--