Name: Carlos Palminha

Current position: Head of Technology at Landing Jobs

Bio: I have a degree in Computer Science (Electronics and Computers engineering) and 20 years’ experience in technology, product, and engineering management with strong know-how on the adoption of software methodologies, agility, and innovation. 

I have two daughters and I love to play around with them, going out and doing things like biking and skateboarding. I’m eager to see them grow and can’t wait until we can go on snow or surf trips!

Tell us about your life before leadership – what kind of roles and projects did you work on?

my journey began as System Administrator at my university’s Mechanical Department where I worked part-time for two years while studying. During that time I finished my degree in Electronics and Computers with my final project developing a driver for the Linux Kernel.

After finishing my degree, I undertook an internship at the only Portuguese international communication operator in a special pilot project to route international/long-distance voice calls over an IP network. Our small team (called Project K), were responsible for everything; from maintaining routers to installing voice boards, to developing scripts and software to monitor the network.

After completion of the project, I joined a not-for-profit technology transfer institute as a software developer. I started by developing drivers for the Linux Kernel, moved to develop a streaming server in C++, voice and image processing software with Java, and portals and web applications with JSP.

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

As a developer, I already had some level of contact with leadership. It was also my responsibility to coordinate the technical work from students, so when the opportunity to step up, arose, it was a natural progression for me.

At the time, I had recently joined a multinational company as a consultant, providing help with software development and management, etc. When there was an opportunity to refactor a product from scratch, I naturally assumed the role of Architect. Later, when we began building out the team, I become Technical Lead; I progressed as the team grew, eventually becoming head of development of that product.

How did you manage the transition? What came easily / what was difficult?

In terms of forming and managing the team, it was reasonably natural because it was an organic process, and I was the ’emergent leader’. The difficult part was assuming that leadership role in a very ‘political’ and department –siloed company.

What was your biggest failure in that first leadership role?

I was drawn into a tense situation between board members and pushed to take sides, although did not do so. I was naturally closer to one board member who was also was my manager. After he left his position, I had the chance to be promoted, but this was blocked due to the former issue. After that, I was not able to politically manage and recover the damaged relationships.

What made you keep doing it?

The belief that I didn’t do anything wrong and continued to be authentic and transparent. I was honouring my responsibility and role to do the best for the company and for the product and team I was managing.

Tell us a fun fact that nobody knows about you

I was hired for my first job as System Administrator within the university because I used a standard recipe over a well-known vulnerability to hack a system. The head of the team ‘caught’ me and began talking to me over a text terminal. At the end of the chat, he invited me to a face-to-face interview and the job was mine!

What are the three key skills you think every leader needs?

Good listening capabilities, not afraid of losing power or position, and always adopt the attitude, “Do what you say, say what you do.

What have you learned about acquiring and retaining diverse talent?

The main lesson is that you can’t have a team of ’10x’ or only with very high-performers. A team should be a group of diverse people that must complement each other, with contributors in different stages of maturity and personalities.

One lesson I learned, is to beware of the ‘cowboy coders’ i.e. profiles that are very good in terms of delivering code but not so good in terms of teamwork. In my past experience, people that fit that profile undermine team spirit and cooperation and I have had to move them on to other roles that are better suited for both them and others.

To avoid this type of pitfall when recruiting, I always include processes that explore behavioural aspects and look to understand their attitude and cultural fit.

How do you motivate your team, keep them engaged, and manage their stress levels?

I work on the premise that people – both individually as part of the wider team – want to feel they belong to something and that their work will have an impact. For that to happen I try to ‘show them the way’ by establishing and discussing not only the product roadmap, but also an engineering roadmap and foster the mindset that those roadmaps are living artefacts open to their inputs.

I also started a practice that each developer can pick a ‘card’ to work on during the next sprint, because developers grow with the challenges they face. I seek to instill that attitude where we look not only for team challenges but also for individual challenges.

In addition, I believe it helps a lot to have weekly or bi-weekly one-to-one meetings.

How do you foster an inclusive, productive culture?

Fostering an inclusive and productive culture is directly connected with some of the factors previously mentioned: recruitment, engagement, sense of belonging, transparency, leadership.

It’s also important that the team also feels responsible for contributing to this. As a leader, you should be the first to set the example in terms of teamwork and behaving professionally, so that others can mirror this.

How do you manage your own stress levels and productivity?

I try to have some mindful moments (I use an App to help) by putting things in perspective, avoiding going into the ‘stress loop’, and facing the situations with positivity. For example: with my daughters confined at home, I had to see the situation as a positive one, taking advantage of the extra time with them and be 100% present; really use those moments to shut down from work.

To improve my productivity and when I need to focus, I tend to shut down Slack and close emails. Another trick to avoid people filling up your agenda is to block your calendar with slots for deep focus and/or be more hands-on.

I also prioritise my to-do list using the simple logic: Now/Next/Later.

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

With the product team, we have a very close relationship and therefore several touchpoints during the week. From a more operational standpoint, product managers participate with the developers and user experience in Scrum ceremonies, and we tend to have several roadmap syncs. We also have a weekly watercooler session to discuss any topic.

With the other Heads (my peers), I have bi-weekly one-to-ones. 

Because each area presents a monthly ‘Point Of Situation’ report to the board, I closely watch those moments and, when necessary, follow-up particular topics in dedicated meetings. I use the same approach with OKRs from other areas, closely monitoring relevant topics.

Where do you see yourself in five years’ time?

Creating a new tech product and/or co-founding a company

And finally, what product do you wish you’d invented?

The open-source Linux Kernel

Great, thank you Carlos!

***

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