How to become a Distinguished Engineer with Ib Green, Foursquare
At the top of every list of software engineer career levels, there is the coveted title of Distinguished Engineer. They’re considered the same executive-level employees, although they usually don’t have any reports.
To explore what the title of Distinguished Engineer encompasses and how an engineer can reach that highest individual contributor level title, we spoke to one such engineer.
Ib Green is a Distinguished Engineer at Foursquare. One of his responsibilities is to promote awareness of the company and its technology externally. He is set to undertake this task at the upcoming Armada JS Conference scheduled to be held in Novi Sad, Serbia.
He also helps Foursquare’s customers by building exciting and innovative products and fostering industry-wide collaboration both through the open source community (via the deck.gl technology stack) and by participating in the development of advanced new geospatial standards (most recently GeoParquet).
We discussed with him in more detail the responsibilities of a Distinguished Engineer, the required skills and knowledge for this position, and the types of companies that benefit from having this role.
Impact across industry
What are the key differences between this role and other engineering roles, for example, Senior Engineers or Architects?
Ib: I would say that senior engineers are great at building individual features given a set of relatively detailed requirements. Software architects take wider sets of requirements for specific products and design software systems that enable engineers to implement the various requirements efficiently in a maintainable and extensible way.
My scope is bigger in the sense that I collaborate not only with engineering teams across Foursquare, but also with other companies and engineers across the geospatial software industry.
The core of my external engagement is a suite of open-source geospatial frameworks and applications centered around the deck.gl framework.
What qualifications and skills are typically required to become a Distinguished Engineer?
Ib: Engineers on the highest levels are expected to have an impact not only on their team and their company but also externally across their industry. This means that strong technical leadership and communication skills are very important.
In my case, I wasn’t exactly born with good communication skills. However, in the middle of my software engineering career, I spent a decade in global software management roles, building software teams while living in various countries across the world (Ericsson in Sweden, Sony in Japan and China and then WMWare and Amazon in the US).
While my technical skills did admittedly get a bit rusty during those years, today, I benefit from the communication, leadership, and organization skills I built. There is no doubt that this experience helps me be more effective in my current role.
Ten years ago, I returned to a pure engineering role at Uber, where I got exposed to some of the biggest geospatial datasets in the world. To help my colleagues get insights from all that data, I decided to focus on using GPUs and the web browser to create highly performant geospatial computation and visualization technologies, which were both used internally but also open-sourced and shared with the community.
I then went on to co-found a new company, Unfolded, to be able to focus on taking the technology stack that a few colleagues and I were working on to the next level and build products that would put the power of these frameworks into the hands of non-programmers such as analysts, data scientists and other customers.
Finally, Unfolded connected with Foursquare, and we found that the capabilities of the two companies (world-class geospatial data plus world-class geospatial analytics tools) were so complementary that we decided to join forces, and our product evolved into today’s Foursquare Studio.
What is expected from Distinguished Engineers?
Could you outline the responsibilities and expectations tied to this position?
Ib: It really varies, as each high-level engineer tends to be a strong and unique individual who has made major contributions in some specific technology area. So to avoid misrepresenting others, let me talk about how I work.
Firstly, I try to stay grounded. I participate in Foursquare’s daily engineering activities to keep my finger on the pulse and lend my support to the teams, especially the Foursquare Studio team that is building products on top of the open-source technology stacks I am leading. I also support other new product initiatives that the company has started.
I interact regularly with Foursquare’s customers and prospects. Having a deep understanding of what our customers need is critical to building the right things.
Writing is critical. I try to write at least one RFC per week, providing technical outlines for how we might build a new feature or technology that our customers want. By doing this, I encourage other engineers to also make the effort to articulate and communicate their thoughts in writing, and we come together in weekly architecture meetings to review our RFCs, share our ideas and align on technical direction.
I write blog posts, usually to announce new capabilities in our tools that build on features that I have been involved in developing. I have also written substantial parts of the external-facing product documentation for Foursquare Studio. While writing documentation is sometimes seen as a task that should be done by professional writers and not by engineers, there is little value in developing new great features if they are not discovered and understood by our end users. I always try to make sure we talk about what we have done in a way that is relevant and exciting to our users.
Participating in a company’s daily activities could easily consume all available time, so I carefully manage my calendar so that I have some good chunks of time left to code and try new things every day.
I use this time to do work that sits outside the box of daily expectations of the engineering organization that surrounds me. I have a strong vision in my mind of how the software stack and technologies we are working on could be taken to the next level and how we could then use that new technology to create even more exciting products. Admittedly, this work can sometimes feel a little lonely as it occasionally takes me outside the immediate priorities of the company, involving features that might not be part of the product for some time, but such is the cost of innovation.
It takes many years to be promoted to Distinguished Engineer
What are some common challenges that engineers face when striving to become Distinguished Engineers?
Ib: In my case, it is something that happened as a side effect of doing what I love to do, at a stage in my career when I had long ago stopped chasing titles. It was not something I strove for.
If you do strive to be promoted to such a role, patience may be required. Showing that you have strong skills is not enough, you are going to need to demonstrate actual impact.
Convincing a group of senior decision makers that you are ready for the role can often be a multi-year process. I started programming in 1982, so I had been working for a long time before Foursquare chose to give me this recognition.
Perhaps surprisingly, being a good follower and trying to excel at the path laid out can hold you back. Being fearless and able to think big is important. But you also need to be able to execute your big, out-of-the-box ideas.
When I started building the open-source deck.gl framework at Uber in 2015, I knew that it had great potential. And today, 8 years later, deck.gl is
- Used by top software companies across the world
- Enjoys an amazing community of collaborators around the world
- Has been the foundation of at least one new company, Unfolded, which I co-founded to build products on top of deck.gl)
- And now, the product we built has become Foursquare Studio and is being used by a number of amazing, passionate customers
But if I had told my colleagues back then that deck.gl could become what it is today, I suspect people would have been skeptical. But with time, persistence, and the help of many incredibly talented and supportive people, that original vision has become true.
Be a force multiplier
Are there specific educational or certification requirements that can help individuals on their path to becoming a Distinguished Engineer?
Ib: Not really. I would say that at these levels, the originality and impact of your work and your ability to be a “force multiplier” (by engaging those around you in the company’s mission) matter much more.
Naturally, you need to be strong technically. You need to have both a general know-how of technology so that you can quickly assess and provide advice and decisions around new technologies and requirements, but you also want exceptional depth of knowledge in some specific area or areas that are important to the company you wish to work in.
You may want to consider building experience in some area that is different from your day-to-day engineering. As an example, I love building things, not only software but also teams. As an example, I hired and built the original engineering team in Serbia that has now grown into Foursquare Serbia. During those early days, the support processes that we normally take for granted when hiring people were not available. Foursquare’s corporate functions, such as HR, legal, etc, were not yet ready to provide full support. I spent many hours on LinkedIn, building my connections in the Serbian engineering community and networking with Serbian engineers until I found the right initial group of leaders and engineers.
While Foursquare Serbia today has the required support staff and is now managing its continued growth on its own, that recruitment effort was immensely rewarding, and I still enjoy working closely with the quickly growing team and getting to know the new team members.
Take some risks and make bets on new upcoming things
What type of company needs the role of a Distinguished Engineer?
Ib: I would say that a technology company that cares deeply about building unique, differentiated technology at scale and wants to build a reputation across the industry for technical excellence and innovation is a great home for engineers on the most senior levels.
However, if your company is mainly building great products through the integration of existing technology stacks developed by other companies (nothing wrong with that), there may not be a sufficiently big technical scope for your company to attract and benefit from the most senior engineers.
Do you have any advice for engineers who want to pursue this career path?
Ib: You should be willing to take some risks, make bets on new upcoming things, and sometimes even start learning a completely new technology and industry. There is an element of luck when spending years building deep knowledge of a certain type of technology and networking with the industry around it.
The technology scene can sometimes be cruel to careers when technologies and skills that used to be hot suddenly fall by the wayside. In my case, this was very much the case: I had a great software career in the mobile phone software industry, which suddenly collapsed when iPhone and Android took over. Sometimes, you need to be ready to take a big step back in your career, salary, title, etc to move forward, and while it can take some time before you find your footing again, you eventually will.
Find a way to remain focused on something you are truly passionate about and don’t allow yourself to be led in too many directions to achieve short term goals. Staying your course is going to help you put in the sustained effort that is required to achieve great things.
As a final advice, I feel that being true to yourself is important, rather than trying to follow a specific recipe. It is very hard to change who you are to fit someone else’s mold. Rather than being similar, every successful leader I have met (whether in engineering, management or even CEOs) is remarkably different in personality and approach. But one thing that they all have in common is that they have learned over the years how to maximize their personal strengths (whether it is charisma, technical strengths, communication skills, vision, etc) while at the same time knowing how to avoid their weaknesses.
So don’t try to become someone else; just focus on making the most of what you are uniquely good at, and don’t focus too much on your weaknesses, as long as you know what they are and you make sure they don’t get in your way.