How to Lead a Great Software Engineering Team

In our Advice to Our Younger Selves series, Redis women tech staffers share insights they wish they knew when they were starting their careers.

Since a very young age, Adi Godkin loved pets, and believed she would grow up to be a veterinarian. Eventually, though, she learned being a vet required doing surgeries—and she realized this may not be the role for her.

At the age of 18, Adi was chosen for Mamram, a technical unit in the Israel Defense Forces. Even though she didn’t have much experience working with computers, she found that she really enjoyed software engineering and programming, so naturally she decided to study computer science when she went to university.

After several years in a variety of engineering roles, from software engineer to R&D manager, Adi joined Redis’ R&D team as a Director of Software Engineering, where she manages a group of 14 engineers with 3 direct reports. We asked Adi to share her tips for becoming a software engineering manager and what she wished she knew when she was younger.

Redis: What was your first job? Does it correlate to what you do now?

Adi Godkin: During my studies, I was teaching many kids, some of whom came from poor neighborhoods and distressed families—I saw their smiles each time we met, and while spending time together, saw how proud they were to have a student mentor them. This felt very satisfying, and it also taught me something about myself: I really like mentoring others, and I should look for a role where that was a major part of my job. But my first real job after finishing university was as a software engineer in a big telecommunications company.

Redis: What’s the best part of your job now?

Adi Godkin: Today, I’m leading young managers and software engineers, and no doubt the best part of my work is seeing how they evolve and grow and what they learn along the way.

Each day at work is dedicated to listening to others, and understanding the things that do not work well and need to be improved. I’m constantly looking for ways to empower others, encourage them to voice their thoughts and share their ideas, and push them to have good collaborations with others, while also doing what they are best at.

When I worked as a software engineer, I was very dedicated and a hard worker, but didn’t really understand what was different about being a manager and what they’re doing on a daily basis. When I became one, I realized that managers work even harder. Managers have bigger responsibilities for both product quality and delivery, but also for the career paths of many individuals.

Redis: Have you had any mentors, yourself? 

Adi Godkin: I had several mentors along my career, and one of them was a former manager of mine. Among many other things, he taught me that good collaboration with your colleagues is key to success and that your relationship with your manager has a great impact on your personal growth. 

When I was a young manager I made some mistakes—I was very execution-oriented, and therefore I sometimes found myself doing things my team should have done, mostly because I wanted the job to to be delivered in the best and fastest way. I learned that though it may speed delivery in the short term, it is not the best way to grow your team. Making mistakes and learning from them is one of the best ways to improve, and I still make my share, and on some occasions I let my direct reports make their own mistakes when I see they can learn from it—and of course, when I know it will not result in a disaster. 

Redis: What do you think young people and/or women who want to work in tech should know about the industry?

Adi Godkin: This high-tech industry is demanding, with lots of working hours and stress. While Redis emphasizes work/life balance, there’s always plenty of work to be done, so you really need to love it. On the other hand, it can be very satisfying and rewarding if you put your heart in it and are able to make an impact.

It is also important to see things in proportion and perspective and not get too anxious if something is not working as planned. This is all part of the journey—when you fail, the point is to recover fast and move forward.

Redis: Can you name three skills (technical or soft) that people who want to become software engineering managers should make sure they have?

Adi Godkin: If you want to become a software engineering manager, you need to have strong technical and architecture skills, along with the ability to make hard decisions. You should have empathy for your employees, find ways to help them when they are facing personal issues, and also care for their personal growth. This job also requires lots of sensitivity and high emotional intelligence to understand your employees’ inner drives and learn what motivates them.

Redis: Do you have any advice for your teenage self?

Adi Godkin: I would say never stop learning. When you graduate from university and start your career, you realize there is lots to learn, so at first you work on educating yourself, asking questions, and learning from others. But once you gain the relevant competences in your job, it’s easy to make learning less of a priority. But the most successful people, in work and in life, never stop learning and improving.