Software engineering is a dynamic and exciting place as a career choice. Software is eating the world, as the famed technologist/entrepreneur/VC Marc Andreessen said. AI and the COVID pandemic only accelerate the pace of software revolution. There has been an insatiable demand for talent in the field, and the trend will continue in many years to come. Much of the work in the field is interesting and challenging. Ambitious professionals in the field get plenty of opportunities to work with smart and motivated people and create technologies and products with high impact on companies, individuals and the society in general. And as a result, there is high potential for financial rewards for them as well. Case in point, many rank and file software engineers at large companies (such as Google, Facebook, Apple & the likes) make $200-500K (or a lot more) a year.
On the other hand, software engineering is a highly demanding and competitive field to stay in. It takes a strong combination of hard skills and soft skills, hard work, continuous learning, and investment in yourself to sustain your success and grow your career. As technologies come and go quickly, and the pace of technology evolution accelerates, experience alone doesn’t go far at all, and in fact, it can quickly become a liability. People at the top of their game make a disproportionately large impact, have much higher chance of getting more satisfaction from their job, and at the same time, get much larger financial rewards than the rest. Many in our field are highly motivated to advance their careers, for good reasons.
Most people readily agree that good guidance & coaching can accelerate their career growth. However, good guidance on software engineering career development is hard to come by, surprisingly (or perhaps unsurprisingly).
- Getting good guidance from trusted mentors/coaches frequently and when needed goes a long way. Unfortunately, the reality is that most people don’t have the luxury. Ideally your manager is a good mentor/coach for you, but most people don’t get a substantial amount of objective and helpful guidance from their managers.
- Engineers are good at problem-solving and taking matters into their own hands. They can find plenty of online content, books, training material, etc that are somewhat relevant, but resources with reasonably good and comprehensive guidance with reasonable depth are hard to come by.
We’re looking to play a meaningful part in changing it and hopefully make an impact on many people’s career growth. We’re a small group of software engineering professionals in Silicon Valley, with decades of combined experience in the industry, at companies of all sizes/in all stages, and broad and deep insights into various aspects of engineering career development. We will, on a regular basis, publish blogs covering them broadly and with good depth, and will also curate good online resources over time. And we will publish in-depth interviews with successful professionals in our field from time to time focusing on insights into their career progression. The goal is to make this website a one-stop shop or at least a great starting point for motivated software engineers seeking guidance on their career development.
[Here is the team. Btw, part of my motivations to start my company Celential.ai is to change #1 via a virtual Personal Career Agent product.]
And we all have Chinese background or significant experience working closely with many in our field with Chinese background. While the content here will be of interest to software engineering professionals in general, we do intend to tailor some parts to people with Chinese background.
We’ll organize the blogs/content around the following career paths reasonably common for software engineers:
- Stay on technical track & become a more senior engineer
- Get on engineering management track
- Become a product manager
- Become a project or program manager
- Work more with customers, as a sales engineer, solution engineer, support engineer, etc.
- Take the plunge into entrepreneurship
There are a lot of interesting topics to cover, and we will not do big upfront planning or follow a rigid order. Loosely, though, in the first set of blogs, we may provide some general guidance for software engineers and focus a bit more on engineering management track and product manager track. And we’ll focus more on critical aspects that deserve more attention than they tend to get, and will also take inputs from readers into consideration.