…or maybe just coming back again
This one will be a very personal article, maybe not interesting for those who didn’t work with me in the last few years. But still I wanted to write it because I wanted to express a couple of things that are wandering through my head right now. So…
I’m leaving InakaESI, I’m going to be a programmer again…
In a way I’m now moving forward. I’m leaving my current job and looking forward to start working on a new one. It’s a new challenge, in a new world, full of amazing things to discover and new stories to write.
But in a way I’m also moving backwards. I’m leaving my CTO role (for the second time in my life) and I’m becoming just a programmer once more.
There are many whys here…
Why am I leaving Inaka?
There are a few reasons I can’t disclose, but none of them on its own would’ve been sufficient for me to leave a company I helped build and grow. From the ones I can, I think there are 2 that are the most important ones:
- The first one is uncertainty. The flow of projects and work at InakaESI (particularly within the realms of Erlang Solutions) was unpredictable. It’s not the first time such a thing happened to the company, but it was the first time such a situation is sustained over such a long period of time. For more than a year already we were always dealing with people on the bench and projects that were estimated and/or planned but never realized. I don’t think it’s nobody’s fault in particular: everybody was aware of the situation and doing their best to get us out of it, but we simply couldn’t.
- The second one is more personal and it has to do with success, or its lack thereof. I’m a success-driven individual. I love being successful and I’m constantly aiming at that. As a programmer, I felt successful countless times and many of those were working for InakaESI. I felt successful every time I saw a system I developed working as expected. As a CTO/Tech Lead, I didn’t feel that way often enough. I know it’s not entirely my fault, it depends heavily on the projects, the teams, the clients, the ideas, etc… but still, it didn’t happen. And I want it to happen again. I want to feel successful again.
Why am I willing to be a programmer again?
Well… the second bullet point above pretty much says it all. I want to build something and see that thing working. I want to be able to tell people see that… I developed it! I miss that feeling, and I know I can achieve that as a developer. It’s, in a way, a safer bet than being a CTO/manager/tech lead.
Do I hate the CTO role?
I left that role twice, I must hate it, right? Actually I don’t. Over the past 4 years I learned to like this position. I learned a lot from great tech leads, like Oren Ellenbogen, rands, Yegor Bugayenko and others. I learned about 1:1s, how to give and receive valuable feedback, how to manage remote teams (and work remotely myself), how not to step in and fix everything on my own, how to lead people that write code in languages I’m not fluent at, etc…
It’s not very popular, but Tech Lead Talks is the result of some of that knowledge. Will I keep writing there? Who knows? Maybe? I still have one or two things worth sharing.
Will you be a CTO again?
So long, and thanks for all the fish! 🐬
It’s impossible to list all the great things that have happened while working in this company. I can not thank each single colleague individually. But I love lists, so I’ll write a few of them (none of them are in any particular order)…
Top 5 Non-Work-y Things
These are the 5 best not strictly work-related things that I will remember forever from this job:
- The Inako: I draw an arm-less character in a piece of paper in high school and thanks to Germán and Chad DePue, it became the official mascot of the company. Thanks to Martina, now I have him as a sticker on my phone :)
- Inaka Pong: The creativity and geekiness of the inakos was always unparalleled, even when it comes to sports.
- Friday Lunches: There were many stages and incarnations of this tradition. Some of them were unforgettably tasty, all of them were accompanied by a proof of friendship and team spirit that will last forever.
- X-Inakos: I’ll be one of you people, soon! It’s amazing to see so many ex-colleagues rocking it so hard after spending time with us. I was always so proud of having shared many days at work with you. I always cherished that about our company.
- Get Togethers: Undoubtably one of the top benefits of being part of Erlang Solutions. These meetings (both local and at impossible-to-pronounce cities in Poland) were otherworldly!
Top 5 Slightly More Work-y Things
- Open Source: From day 0, everything that we created and deemed valuable for others was shared as open-source. We had many projects in many languages for many platforms. That opened many doors for us, in conferences, communities and even clients.
- Openness: We shared. Not just code, not just style guides or tools. We shared our internal guidelines. We exposed the way we work for all the world to see. That allowed us to tell developers: “Here, you don’t need to ask, you know how we work. Do you like it? Come join us!”. That also allowed us to tell our clients: “Look, there is no secret. This is how we’re going to manage your product.”. It was super valuable.
- Conferences/Talks/Tech Days: This job gave me the chance to give a talk at conferences for the first time in my life. And boy did I use it! I also find super valuable that these companies promote this kind of activities internally and externally for all its employees. Everybody was allowed and encouraged to speak and share their knowledge!
- Hackathons: Since the early days when we spent two days playing Spawnfest with Chad DePue at his place (or a friend’s) until the next August 4th when I’ll be participating in the Inakathon for the last time, we walked a really really long road. Marcelo Gornstein helped me out with our first official Inakathon, Hernán and Roberto helped on another one, Marcos won every single one of them. Those events were just AMAZING!
- The Blogs: I wrote my first blog post ever at Inaka’s blog and you’re reading this now here on Medium, right? Without the encouragement from people like Chad DePue and Martina but also like Iñaki and Fede Carrone, I would’ve never done it. I owe them a lot. They shaped me.
Top 5 Actually Work-y Things
- The Projects: Man, we had some tough ones! But we also had some impressively challenging ones! Not so long ago, Francesco asked me to write a list of all the projects Inaka worked on, what we did there and what we learned from them. That document is long, really long, I tell ya.
- Yearly Feedback Reviews: The first time Chad DePue called me in for a feedback meeting, I panicked. I didn’t know what to expect, I had never had one of those before. It turned out to be a rewarding experience and I came to expect those meetings every year avidly. Not for the salary adjustment, but for the actual feedback that was thoughtfully exchanged in them. After Chad left, Martina was in charge of them. I’ve never seen anyone more honest, thoughtful and emphatic than her on those meetings. Thank you, Martina, for all that!
- Yearly Feedback Reviews: Yes, it’s not a typo. Once I became a CTO I had to conduct these meetings myself. And I panicked again. I stressed, I actually physically suffered and came to hate again that time of the year. But, on my second year giving feedback to people (now with more than a year of CTO role), something wonderful happened. I don’t know exactly what clicked in my brain, but I started to enjoy and look forward to these meetings again. I extracted so much value from them. Thank you, all my colleagues at Inaka, for that!
- The Tech Lead Talks: Learning to be a Tech Lead is hard, but it’s much easier when you share the learning curve with other such talented individuals. Thank you TLs, I learned a lot!
- The Value of People: At Inaka, people was the most valuable asset. From vacations to ping-pong tournaments, conferences to just being friendly with those in need. Every inako was always treated as an individual, not a number. That certainly marked a difference between us and every other software company here.
5 Lessons Learned
I learned a lot in my years at these companies. These are not the top 5, these are just 5…
- Communication is Key: Have you ever watched a movie or a soap opera and thought “If you would’ve just told her that, we would’ve avoided 3 entire episodes, you moron!”. Happens to me all the time. At Inaka we learned that the hard way.
- Guidelines are Super Important: With proper guidelines, you don’t have to think about how this other guy wrote the code. You can focus on what he wrote or why he did it. And that’s just one of the many many benefits of good, consistent, open and up-to-date guidelines.
- A Good Idea is not All: We worked with startups, lots of them. We learned from them that just having a great idea, even if you get to develop it in its entirety, does not warranty success. You have to publish it, support it, monitor it, etc… And you have to budget for all those activities before you start with the development process.
- Estimation is HARD: We were thorough and that used to be one of our most valuable virtues. We used to ask lots of questions and we estimated with high level of detail. And that was awesome… for MVP-sized projects, when the client already knew what the first iteration of their system was going to be and we were only estimating that iteration. We ended up using the same level of thoroughness to big projects, totally not MVP-sized, with the expected results. We learned: If your estimate goes over 2 months of effort… you should be estimating something smaller and leaving the rest of the estimate for a future iteration.
- Teaching is Learning: I will let Iñaki explain it…
Goodbye, now for Realz!
This last part goes to all my fellow inakos and erlangers:
Thank you very much. It was an honor working with you!
I learned so many things and I enjoyed so much working with you.
I expect to keep seeing you around and of course: you know where to find me, right? I’m the only elbrujohalcon in the world :)