Zero to CTO – Marek Gajda is in the Spotlight

Name: Marek Gajda

Current position: CTO at The Software House 

Bio: Marek is a former full-stack developer and an experienced Scrum Master who completed projects in PHP, Node, Java, Ruby, Python, and .NET. He now leads dozens of product development teams and teaches technology managers how to scale up their IT departments effectively. Amateur poem reciter and tarot reader. 

Hi Marek, welcome to the CTO Craft hotseat! Can you tell us about your life before leadership – what kind of roles and projects did you work on?

Initially, I wanted to be a maths teacher as I was good at it, but didn’t pursue it for various reasons. To keep myself sharp and due to my passion for teaching, I mentored a couple of classmates in our maths curriculum. Soon, I became the top person to approach for tutoring and navigating general school life, which sort of marked the beginning of my path into leadership. 

I considered going into electrical engineering but got put off by the curriculum. Instead, I graduated with a Master’s in Information Technology and a strong aversion to the computer networks and databases I had to deal with during my first internship assignment at a software development house. It involved building a web portal for the Polish city of Zielonka.

While working on a weather widget — made with just two lines of code — the client’s coordinator called to say that the displayed temperature didn’t match that of her Zielonka thermometer. In a moment of pure comedy, she couldn’t accept that the weather widget I used had a different reading. I realised then that my university hasn’t taught the practical skills of working on the job like problem-solving and communication. 

In my first proper job, I gained the trust of my boss by volunteering to solve puzzles other developers deemed too hard. I enjoyed employing logic since it’s the foundation of programming. Naturally, the other developers began to lean on me as my classmates once had. A couple of years later, I was promoted to team leader when the team had grown to 40 developers. 

How did your first leadership position come about, and was it intentional on your part? 

I had no prior intention of becoming a team leader. When I was promoted, my coworkers expressed surprise, as they thought I already was one! The leadership responsibility came naturally as I was getting my hands dirty, making the right calls, and delivering on what I’d promised. 

In my first couple of months in the role, I thought it was more about recognition of my mentorship, and I continued coding and strategising on my own. One day, I admitted to my boss that I was overloaded, and he enlightened me by saying: “You have people. Just because I said this needs to be done doesn’t mean YOU have to do it.” 

So my first big lesson on leadership was learning that you should solve a problem by guiding those people who can deal with it. I became proficient at finding responsible peers to delegate to and soon, due to successful growth, we had to hire new managers and I became head of the team leaders.

Then, our boss launched a competition to pick a new CTO, which I didn’t apply for, thinking there was too much responsibility. He noticed and called me in frustration, asking why I hadn’t applied yet when he prepared the stunt for me!

Some of my juniors have since become CTOs, and I like to believe my support helped their development and career progression, although the achievement is entirely their own. 

What was your biggest failure in that first leadership role? 

Back when I became the CTO at my first company, around 90% of developers from a key project — that I handled — quit in one month. The situation was dire and many of them felt isolated with their assignments.

Back then, we hadn’t figured out how to build relationships that went beyond the daily grind. I was too focused on making people deliver software efficiently. Now I know that thinking about the team’s (and individuals’) job satisfaction is essential as a leader and that means listening carefully to each wish, complaint, and opinion. 

What did you learn from that failure that you took forward?

After I became a first-time CTO, I actually only stayed in that company for two weeks due to a lack of transparency and agreement regarding the responsibilities. To this day, a CTO’s role is probably one of the least-defined roles in software development.

I considered freelancing for a while, however after meeting with my friend Mateusz Kubiczek (Matt), an ex-developer, we discussed starting a development company as we’d both been involved in all areas of work for our last employer.

The challenge of keeping software development collaborative and agile has always intrigued me. It’s like keeping a nuclear reactor from exploding with decision-makers often getting stuck on micro-details. As a result, we co-founded The Software House, where Matt is the CEO and I’m the Head of Technology. Part of our aim was to make Agile more predictable in results and driven by the quality of code and people’s collaboration, overcoming the challenges that frustrated us personally as developers. 

Yes, I co-founded a business and called myself a CTO, without knowing exactly what I would be doing! Soon enough, I discovered there’s marketing to cover, recruitment, and sales meetings, all of which I had to get involved with apart from being a development lead. I had to learn how to guide projects toward completion without getting lost in coding challenges. 

Having said that, getting involved was the easier side of the job for me as throughout, I never lost the fulfilment of being helpful. To the future CTOs, I say, be present for other people as much as you can; they will appreciate it and look to you for guidance. That’s how leaders are made. 

Tell us a fun fact that nobody knows about you 

After my bachelor’s degree, I signed up for an experimental Master’s course in computer game development. At the time, I loved Heroes III, a turn-based strategy game, which led me to build three similar games of my own. Back then, game engines weren’t available, so I had to create the logic and graphics. While the coding was easy enough, I sometimes had to spend a couple of weeks making shadows reflect on water the right way!

What are three key skills you think every leader needs? 

Way before I became a CTO, I considered investing in the McDonald’s franchise. After some research, I realised the company’s policy would make me work up from cooking fries to a restaurant manager before receiving official permission to open the restaurant. While CTOs don’t face that requirement, this anecdote presents the first fundamental skill to have: interdisciplinarity. The most talented leaders I know started as regular developers. Climbing the career ladder is like learning to drive with confidence in all weathers. Knowing how people make software from multiple standpoints will allow the CTO to act faster and with greater precision. Just like driving. 

Resourcefulness is the second key skill — consider it ‘knowing how to make ends meet’. Become an initiator by volunteering to help with printer errors, write expert articles for the company, or take part in after-hours community presentations like our ‘Uszanowanko’ developer meet-up. 

It’s simple. When you meet people, you learn about their needs, pains, and ideas on how to move on. That sharpens the logical reasoning you need to lead. Recently, I helped a film crew set up cameras for a webinar we were recording, which taught me how I can make my video appearances better for the audience. 

The final one is communication — an often overlooked trait — that can lift a team up, or break it apart. I say that in all cases if something fails in a software project, it’s not the technology or management but a lack of a shared understanding. “Say what you do and do what you say” is a mantra to remember for future CTOs that will make them more trustworthy and respectable. 

What have you learned about acquiring and retaining talent? 

You need to have a public and/or industry reputation because people like to know who they’re dealing with. My presence on YouTube, as a speaker for Uszanowanko or CTO Roundtables, and as a management and scalability expert on LinkedIn helps The Software House in our recruitment efforts. That’s an important part of the hiring wheel of fortune.

But! You also have to care for your employees already on board. Knowing if they need tools, equipment, new skills, a new direction, or even a project, and where necessary, finding a compromise that works for both sides. Several of our ex-employees have returned to our company once they realised that this ‘culture of care’ isn’t an industry-wide standard. 

How do you motivate your team and manage their stress levels? 

When the pandemic began, four of my developers became demotivated while working on a particular project. Once upon a time, they shared an office together. After they switched to remote work, the client divided the product into four modules, with each developer assigned to one and they felt isolated. Stress management starts with keeping a team feeling like they work together, are well-informed, and listened to. 

For me, employee motivation depends on several things. People like to know who they can become at the company, and our answer to that is to have a clear and publicly available roadmap for them. Apart from the skills a CTO wants them to gain, people should be free to choose the training they want, as growth opportunities are a priority for them. 

And don’t underestimate the power of socialising together to create cohesion. Don’t wait until your team decides to get together — give them the opportunity. Our employees have an audience of 1.4M+ per year that they teach their tricks to, and we also organise hackathons, gaming sessions, and trekking trips. 

How do you manage your own stress levels and productivity?

I surround myself with people who support me. Even as a CTO, it’s important to find mentors among your colleagues and beyond. The time when I thought I should carry the weight of problem-solving on my own was the hardest for me. For instance, I used to be stressed out with client calls, which I conquered by inviting a few developers to join me. Even though they didn’t speak much, their presence helped me.  

I also recommend the Rubber Duck Method: When faced with a problem while programming or debugging, talk to a duck about what you’re doing and what you want to achieve. At a point, you’ll realise what you’re doing wrong. Find a colleague that can be that duck for you! Delegate what you can, don’t carry too much weight, prioritise using the Eisenhower matrix, and know when you need to stop if things aren’t going well. 

How do you stay in sync with other parts of the business? 

We have weekly syncs, and dailies or bi-dailies, but I feel they work best if you invite ‘outsiders’ from other departments; bringing in specialists and maybe seniors rather than just the management. Then, we can put the interdisciplinarity I mentioned earlier, to good use. For example, a Product Designer might have excellent workflow tips that can work for development. Similarly, a copywriter can help technological people better articulate their code tutorial or guide, making them informative and helpful for a bigger audience. 

Where do you see yourself in five years’ time? 

At the same company!

In 2020, we brought in 60+ employees, so I have more people to manage. For me to have a new position here, I must train several people to take over my level. Maybe I’ll become a fractional CTO for clients; there are still many adventures awaiting me at The Software House. 

Finally, what product do you wish you’d invented? 

I haven’t found a suitable product for planning projects and employee work at a software company. I’d love to see one. There’s Jira and some other tools, which focus on one project at a time, but I need something on a meta-level because I have 20 projects. So something that concerns the management of project management!

Thank you, Marek!

***

If you or your CTO / technology lead would benefit from any of the services offered by the CTO Craft community, use the Contact Us button at the top or email us here and we’ll be in touch!

Subscribe to Tech Manager Weekly for a free weekly dose of tech culture, hiring, development, process and more