Main illustration: Simone Noronha
The offer email I received from Intercom ended with the line “Join us to do the best job of your career”.
My first thought was that it’s quite a bold statement, which creates a lot of expectations. I was curious to see how the company ensures that every new engineer has the opportunity to do the best job of their career, and how that would translate to my personal growth and everyday life in Intercom. So how has “the best job of your career” transpired in the Intercom world?
Making an impact as an engineer
To begin with, I loved the fact that I was considered to be a fully productive team member from day one. I joined Intercom on a wiggle week. My team worked on a project that enabled others to build integrations on top of our UI. I got the chance to learn and work with Ember.js, and we built a working prototype from scratch. At the end of the week, I demoed our proof of concept in the “Show and Tell” presentation in front of the whole company. “Show and Tell” is a Friday Intercom tradition, where we showcase the projects that the teams were working on during the week. For a new member of the team, absorbing all of this context and creating something impactful, as well as presenting in front of the whole company, was way more than I would expect to do in just a couple of days.
What can be built within a week at Intercom still amazes me to this day.
The amount of stuff that could be built within a week was also quite impressive. In fact, what can be built within a week at Intercom still amazes me to this day, more than six months later. I have never encountered an environment where things are delivered with such speed. For somebody coming from environments with more lengthy building processes, this speed can be quite daunting or challenging in the beginning. It wasn’t only my technical skills that I had to work on to adapt to the new way of doing things. I had to become comfortable with the concept of “shipping to learn”, which is one of our core values. “Shipping to learn” is based on the idea that software doesn’t have to be perfect to be shipped, and most of the time it is not possible to define what success looks like in advance. By shipping and collecting feedback we can apply our learnings and iterate on our solution. I revisited how to take everyday decisions when building to optimise and achieve results with reasonable tradeoffs.
After the wiggle week, I worked on the “Salesforce by Intercom” integration, a much expected feature for our customers. This was part of a more holistic company strategy going on at the time, called Intercom for Sales. Many different parts of the company had to work together to make this happen. It was fascinating to see so many people collaborating on the same project and delivering with such a great rhythm. The success of this project was proof that even though we are massively growing, we can still operate with the ethos of a small company when we need to.
Even though we are massively growing, we can still operate with the ethos of a small company when we need to.
During those early weeks, I felt productive and impactful in my new role. I had just joined Intercom and yet I had the opportunity to contribute so much to solving problems and building solutions. It’s common for a new engineer to undertake simple tasks for their first few weeks in a new job but you won’t find this at Intercom. I was immediately thrown into high impact projects and even early on, my opinions were requested and valued. I was undertaking challenging tasks and I felt trusted to complete them. Achieving impact for our customers that fast is extremely motivating and empowering for a new engineer.
Setting engineers up for success
It goes without saying that having to learn things and contribute so fast can be quite daunting in the beginning. New technologies, a big complex product, a lot of different tools and a rapidly moving environment is definitely not a walk in the park. In order not to be overwhelmed in your first weeks, a member of the team is assigned to be your dedicated mentor. The purpose of the mentor is to help you through this process and speed things up. In my case, the support of my mentor and my team members was vital to tackle this initial steep learning curve. Questions from everyone are also highly encouraged in the engineering department. Everybody wants you to learn and contribute fast. One phrase you’ll hear quite often is “setting people up for success”. It is the responsibility of the manager and the team to define what “success” means and the steps to get there to help a new person succeed in their role. It’s simple but effective: If people succeed, the company will succeed, and if people grow, the company will grow as well. It’s a win-win situation.
How does engineering support happen day-to-day in a fast-paced environment like Intercom? A new member of the team has to ramp-up their knowledge of various technologies and tools. Apart from direct exposure to projects, there are a lot of other ways to support engineering growth. Training, seminars and knowledge sharing sessions are a significant part of the engineering life. We do lunch-and-learn sessions to educate ourselves on new technologies. Regular feedback is an indispensable part of the growth process. Engineers tour other teams as a way to learn about the different parts of the application. A tour involves an engineer transferring to another team to undertake a specific project in that team’s domain, and every new engineer at Intercom will typically complete two tours shortly after joining. Above all that, we focus on ensuring that everybody has all of the necessary resources, knowledge and help to succeed in a task.
The focus isn’t only on engineering skills though. Engineers get to do a “customer day” when they join and work as part of the customer support team for a day. Similarly, there is the opportunity to do a “sales day” as well. This can help a person upskill in areas outside of their daily responsibilities and gain a more holistic perspective of the product, the whys and the hows. In the Intercom world helping a person succeed is part of everyday activities that combine being challenged and receiving support.
If people succeed, the company will succeed, and if people grow, the company will grow.
Choosing the right technology
We use a lot of different technologies for building, shipping and monitoring our systems. We are never afraid to try new ones, aiming to find better ways of doing things. Some of our engineers recently spoke about rewriting one of our core systems from Java to Go, as there were many performance and maintenance benefits for the team. The phrase “this is how we always did things” has no place in our everyday vocabulary. I could see this from my early days in Intercom, as experimenting with new solutions to measure the impact and ultimately become part of the roadmap is a common thing. This cultivates a culture of engineering excitement and passion.
At the same time, we do appreciate the value of standard “boring” technologies. On another occasion, we stuck with our main technology, Rails over Go, to build our new Slack integration. Rails was a better option for us at the time since it would ensure better maintainability and consistency among the different projects we own. Our engineers have already spoken about the importance of standard technologies in our product success. Being reliable and building good solutions fast have to be the ultimate target. Achieving this balance between engineering excitement and building reliable solutions is one of the biggest factors of success in our engineering teams.
Solution focused engineering
How we take everyday decisions about building our products also reflects this principle. We always measure the impact of a solution before we begin and acknowledge what we do not know. Afterwards, we proceed, being aware of our assumptions and our data. Shipping early helps us collect feedback from our customers and then iterate. This prevents us from spending our time over-engineering solutions without adequate information. We do love technology but we love to build great solutions for our customers more. This approach allows us to make smart decisions and build fast, ruthlessly prioritizing when needed.
Wearing more hats than your engineering one during the day helps you upskill in unexpected ways.
Engineers participate a lot in those decisions. The way we operate as a product first company creates the need for close collaboration between the different principles. Having experience in more strict environments before, I was impressed by the power given to engineers. It is strongly desirable that people have a word on decisions about the product, the roadmap, the processes and our culture shaping. We are also encouraged and supported to write and speak about our work. Wearing more hats than your engineering one during the day helps you upskill in unexpected ways.
The future is bright
Intercom has the fascinating combination of a late-stage startup environment and a complex expanding product. The scaling challenges it faces on this journey give its engineers the opportunity to grow to their maximum potential and have an impact on something big. Working with so many smart and passionate people makes every day an inspiration. For me, getting challenged every day and developing myself in multiple ways definitely sounds like a great step in my career.