A number of red flags should cause you to reconsider your position at your current company, including:
- being compensated unfairly.
- being mistreated, undervalued, or disrespected.
- disagreeing with the fundamental strategy or practices of the company and not being in a position to change them.
- failing to get along with your manager and your teammates.
- failing to fit in with the company culture.
These types of reasons aren't too hard to identify and provide concrete justifications for trying something new.
It's also time to leave when your learning rate at your job tapers off and starts to plateau. This is a much more subtle reason for leaving that's harder for people to recognize but likely affects a much larger group of people. Transitioning to another team or company provides an opportunity to switch to a different learning curve and to accelerate your learning.
Paying attention to your learning rate is important in general but particularly important for young professionals. Learning is an investment in yourself for the future. It also compounds -- knowledge not only begets knowledge, but more knowledge gives you a foundation upon which to gain knowledge even faster. This is why most people learn more in college than they did in high school and more in high school than they did in earlier years. Ideally, out of college, you should set yourself up to learn even more than before.
Palantir co-founder Stephen Cohen captures the importance of the compounding effects of learning, in an argument for why college graduates ought to work at startups instead of established companies:
If you graduate Stanford at 22 and Google recruits you, you’ll work a 9-to-5. It’s probably more like an 11-to-3 in terms of hard work. They’ll pay well. It’s relaxing. But what they are actually doing is paying you to accept a much lower intellectual growth rate. When you recognize that intelligence is compounding, the cost of that missing long-term compounding is enormous. They’re not giving you the best opportunity of your life. Then a scary thing can happen: You might realize one day that you’ve lost your competitive edge. You won’t be the best anymore. You won’t be able to fall in love with new stuff. Things are cushy where you are. You get complacent and stall.
Startups might not be for everyone, but the message about not shortchanging your intellectual growth rate still applies.
What about a passion for what you're working on? A strong passion and excitement in your company mission or in what you're doing is critical to sustaining a steep learning curve. Passion and meaningful work supply the motivation for long-term learning and allow you to stay in a state of flow more often. Mihayli Csikszentmihalyi, one of the world's leading researchers in positive psychology, developed the theory of "flow," a state where you enjoy what you're doing so much that you don't even notice the passage of time, and found that more flow generally leads to more happiness. It's hard to stay motivated to learn or to enter a state of flow in the long run unless you believe in and enjoy what you do, and it's also hard not to be getting better if you love what you're doing.
Assessing your learning rate first requires identifying the many different types of learning can happen on a job:
- Technical learning specific to your job function. For a software engineering position, for example, this might include things like learning a new language, getting familiar with new tools, improving your ability to design new systems, etc. Getting better at these skills makes you more proficient as an individual contributor.
- Prioritization skills. Oftentimes, there are tens or hundreds of things that you could be working on that might generate value. Figuring out the highest leverage activity that generates the most value for the least amount of work at any given point is hard, but it's probably the single most valuable lesson you can learn professionally.
- Execution. Learning how to or how not to build and deliver a great product or service and how to do it consistently and on time takes practice.
- Mentorship / management skills. The faster an organization grows, the sooner you become a more senior member of the team. Seniority provides opportunities to mentor or manage other teammates, to shape the company culture and values that develop, and to influence the direction of the team.
- Team leadership skills. The skills needed to make a team function effectively differ from those needed to be productively as an individual. How should milestones be organized? How do you coordinate effectively and minimize communication overhead? How do you make sure a team gels?
At various points in your career, you'll value these skills differently and should seek out opportunities that develop the skills you value. All of these skills are mostly generalizable beyond your job at your current company. You take those skills and experiences with you to your next job.
There's also a type of learning that's important for career success but that is less transferable to other companies. And that's institutional learning on how to function well within the specific processes defined at the company: how to get the approval of key gatekeepers for decisions, how to get projects you believe in prioritized on the roadmap, how to negotiate for more resources for your team given the company's resource allocation process, etc. Some amount of this is necessary to do well, and some of the negotation and persuasion skills will help in the future, but to the extent that much of this learning deals with the particular bureacracy or process that you need to deal with, it's significantly less valuable than other types of learning.
When you first join a company, the learning curve usually starts really steep (hopefully, if you've made a good choice). You're immersed in new technologies, in a new product, and on a new team, and there are opportunities to learn along multiple dimensions. When I first joined Google right out of college, I learned a lot in my first six months there. Google's done a great job with their GoogleEDU training materials. I soaked in all the codelabs that discussed why core abstractions existed and how they worked. I studied programming style guides to learn best industry practices. I read design docs about search indexing and other scalable engineering systems being built internally. I learned to build and ship something seen by tens to hundreds of millions of people per day on google.com.
Your learning rate might decrease due to organizational issues (maybe processes have become too bureaucratic and limit your ability to iterate and launch quickly) or due to maintenance issues where the team doesn't grow quickly enough to scale with the complexity of the product. The second makes it hard for you to switch projects and work on new things.
Warning flags for me at Google started to appear when I realized that many projects either had no concrete launch paths or depended on non-transparent approval processes over which I had little visibility or control. Being able to launch products was important to the extent that I wanted to learn how to build great products, and quick, iterative feedback is a necessary foundation for learning. When I projected what I could accomplish and reasonably launch by staying an additional year, I didn't feel satisfied, so I left. There was certainly more I could have learned by staying -- I could have dug into the internals of more major systems -- but my rate of learning no longer mirrored what I encountered when I first started.
I similarly left Ooyala when I felt that my own learning rate at the company began to plateau. While I was there, I learned about building and selling an enterprise product, the intricacies of flash video and analytics, project estimation and team organization, and more. I left when it became clear to me that I could learn much more on engineering and on building a product by joining a smaller and faster-growing team. A contributing factor that I only discovered after working at Ooyala for a while was that I wasn't nearly as excited and motivated to work on an enterprise product as I was to work on a consumer product that I would actually use everyday.
When I interned at Microsoft the summer of my junior year in college, I received a good piece of advice secondhand from a friend's mentor: always re-examine and reflect on where you are in your career at least every two years. Even if you're perfectly happy with your job, the exercise forces you to check that you are actually enjoying your work and learning on the job rather than just being comfortable.
This question originally appeared on Quora: How do you know when it's time to leave your current company and move on?