We work in tech and we live in the intensively social age of the internet. We have demanding jobs. We're constantly immersed in a sea of information. A lot of that information is news about new tech and updates from people in our extended networks.
How do we achieve a balance between hard-driving career growth and happiness and fulfillment at the same time?
Of course, the answer won't be the same for everyone! But I'd like to share some tips that have helped me in the past, and I hope some of them will benefit you too.
There's an idiom: "keeping up with the Joneses." This refers to the comparison between one's neighbor as a benchmark for social class or the accumulation of material goods.
In the tech-enabled developer community, this still resonates — but it can be translated a little differently:
We constantly hear about our friends, coworkers, and connections learning new frameworks and languages, speaking at prestigious events, being promoted to exciting new roles, becoming recognized as industry experts, and much more. It can feel like we're not growing or accomplishing things as quickly as the people we're connected to — both online and offline.
At the same time, we're bombarded with exciting news about important or "must-learn" programming trends, technologies, libraries, frameworks, toolchains, and so on.
Then add the day-to-day pressure of job expectations and career growth, all while trying to expand our repertoires of accomplishments and technology expertise at the same time.
So how can we tackle this?
Although it can be a constant temptation to compare yourself to the people who surround you in your daily life, there's one individual whom you should compare yourself with: the person you were yesterday. Or a week ago. Or a year ago.
A hypothetical example:
This sounds intriguing, but you're overwhelmed by the cognitive burden (not to mention the hours) that would be involved with exploring this right now. After all, you just finished implementing React Hooks in your app the other day. Still, it does sound interesting, and maybe you should devote some late nights to it...
Step back. You recently learned something new, yourself. This was something you accomplished: feel good about it and take pride. You learned Hooks — that's something you didn't know a month ago! Don't worry about your friend telling you to move on to the next thing. Celebrate steps you've taken and things you've accomplished recently.
You are the benchmark that matters. It's helpful to write down these things (for yourself, and also to share). Maybe you learned a new tool, gave your first presentation, got promoted, joined a tech community program, helped a teammate, or debugged a difficult issue.
Write down these new learnings and accomplishments as they happen. Then go look at the list periodically. It will astound you to see just how far you've come. Not
@FamousDevOnTwitter, not Promoted-Yet-Again-Coworker — you.
Every three months, set up some personal goals. It's important that these are goals you feel strongly enough about to follow through with. And if it helps, you can absolutely set goals you know you'll achieve.
Have you ever created a to-do list and added items you've already completed (or are about to finish) purely for the cathartic joy of crossing them off? 🙋🏻♀️ This can be like that, but a little more ambitious.
The purpose of these goals isn't to make yourself work unusually hard to experience more pressure or stress. It's to accomplish things you can feel good about.
Here are some examples:
- Present a lunch-and-learn at work
- Apply for a certification or experts program
- Contribute to a community you care about
- Write a blog post
- Speak at a meetup
- Ask someone you admire for career advice
- Discuss a career growth skill with your manager
Revisit your goals every few months and check in with yourself. If you didn't meet your goals, maybe they were too lofty. Assess the previous set of goals and create new ones or carry over unfinished goals. If the same goal stays on the list unfulfilled, rethink that goal. Can it be broken down into smaller, more accomplishable parts?
You could aim for one or two bigger goals, or several smaller ones. Review and revise as you get more comfortable doing this. You know yourself best!
Don't be shy about this. Self-promotion got many, many extraordinarily successful people where they are today. Sharing your wins also solidifies them in your own view, which is just as valuable — sometimes more valuable — than other people knowing about them.
I'm going to say this is the most important way to share wins. A good manager tries their very best to notice and recognize your achievements. However, there are plenty of things you do that are outside your manager's range of vision, especially if you're autonomous and aren't micro-managed every second of your workday (which hopefully is true for most people). And with the prevalence of remote work now, this is even more the case.
So if you helped solve a tricky problem, tell your boss.
If a coworker complimented you on a job well done, tell your boss — or better yet, ask your coworker to tell your boss on your behalf.
If you finish a project, tell your boss how it went — before they ask about it. Most good managers are aware of what you're working on and they'll follow up with you to see how you felt about the project. Let them know about your successes before they ask you.
I've been leading engineering teams and managing people for a decent number of years, and this is one of the top things I notice. When team members share their progress before I follow up, I take special note of it!
If you get recognized for something that happened at an event, with a client, are nominated for a program or award... tell your boss.
You get the idea.
Managers want to do right by the contributors on their team, but they aren't omniscient superheroes. It's impossible to know every single thing that each team member accomplishes on a daily basis, especially in autonomous, distributed, or remote work environments. Share your wins with your boss and share them often. Your manager will appreciate it, and they will remember and take actions as a result.
Their actions might take the form of promotions, performance salary increases, annual bonuses, recommendations for projects, and/or putting in a good word for you with anyone and everyone they encounter who is in a position to further your goals or career.
You can also share your wins publicly. For example, with
#DevDiscuss, broadcasting on social media, writing a blog post, etc. While this might sound like "shameless self-promotion," it will get you noticed. Sometimes we all need a little shameless self-promotion. There's nothing wrong with public validation for the blood, sweat, tears, and tremendously hard work we put into the things we do.
And when we share our wins in a public space, remember that space is watched by people with influence: people who are in a position to support, sponsor, and promote you and your activities.
When people respond when you share your wins publicly, reply and engage in conversation whenever possible. Great connections can be made through opportunities that arise from sharing wins. (And if you get opportunities through this, don't forget to share them with your boss. 😉)
It sounds so simple to say "just be kind." But kindness goes a very long way.
The tenets of kindness are fairly straightforward in a general sense. Being kind includes:
- Showing empathy for people who might be facing challenges
- Demonstrating compassion even when you disagree
- Having patience and understanding for others
Being kind does not mean complacently going along with decisions or choices you don't agree with. It does mean that you compassionately consider other points of view and back up your views with logic and empathy rather than force or ego.
Even if you don't work in customer success, support, community, or developer relations, kindness stands out. People notice kindness and repay it.
Having a reputation for being happy to help, empathetic to customers, users, and teammates, and a pleasant person to engage with sets you apart. Think about your coworkers. You probably have people you prefer to interact with because it's enjoyable to do so. Be that person!
The same is true in public networks (online, at events, in the tech community, etc.). Exhibiting kindness, compassion, and helpfulness makes you:
- Approachable to people who are looking to build a connection
- Appealing to the people you're trying to network with
- Memorable, and therefore more likely to be reached out to in the future
Be the person you'd want to work with, support, and advocate for — and other people will absolutely want to do the same for you!
By definition, nobody enjoys being uncomfortable, but it's possible to be open-minded to things you know will cause you discomfort if there are payoffs.
We grow the most when we venture outside our comfort zone. There's far more to gain when we try things that stretch us. So go get uncomfortable. Try something that scares you a little bit.
- Speak at a meetup or conference
- Build an app with a technology or framework you've never used before
- Volunteer for a new type of project
- Take a job you've never done before
A little more on that last point. If you apply for a job that you're fully qualified for (or even over-qualified), do you have room to grow in that position? Does it challenge you? Is it fun and interesting? Does it further your career progression?
Maybe a precious few jobs will do these things for you even if you're fully or overly qualified. But many, many jobs won't. It might be a temporary change of pace from what you were doing before, but if it's not something you ultimately learn from and find fulfilling... what was the point?
Go out on a limb and try applying for jobs you haven't done before. If the position title is the same, look for expansion of responsibilities. If you're nervous about this, you can start with things that are related but more senior-level. If you're currently an SDK Engineer, you could try applying for something like Developer Experience Architect.
It can also be valuable to take steps in different directions, especially if you want to try new things.
I once left my job as an engineering manager to take on a technical content writing role — and loved it. That step ultimately led me to where I am now (leading Developer Relations).
It's important that you try things that will take you out of your comfort zone, but not at the cost of your own wellbeing. If something is going to cause you undue stress, then refrain. You know yourself best, but also know that it can bring tremendous fulfillment, career advancement, and personal success to try new things that are initially uncomfortable but carry significant rewards. There's a balance that you'll need to explore for yourself.
If you've taken steps to do the other items above, you can and should reach out to people you admire to ask for advice, mentorship, or sponsorship.
Don't do this prematurely. If you haven't taken the time to set some personal goals, share your wins, stretch yourself outside your comfort zone, or demonstrate that you're a positive influence on those around you, this step will be much, much harder.
If you are perceived as someone who hasn't invested any of your own time or effort into growth and you're just asking for someone else to provide all the answers, reaching out could very well backfire.
Here are some things to consider when you reach out to someone:
The most straightforward way to connect with someone you don't have a previous relationship with is to be specific:
- Pick one thing to request advice on (e.g., "Do you have advice on how I can get involved in XYZ program that you're a member of?")
- Approach them about something that is not what everyone else asks about (e.g., "You have a great natural speaking style, how did you refine your stage presence?")
Conversations that start out this way can lead to much more in-depth connections later. Don't take it personally or be too disappointed if they don't have time or bandwidth to respond though. Many people who are well-known in a community receive dozens of outreach messages per day or even per hour.
If you're going to approach someone who you work with, or someone who is known for their willingness to provide mentorship, consider the following:
- State what kind of connection you're hoping to make
- Share what this person has accomplished that you admire
- Provide details on how you see this person's experience and wisdom as beneficial to those around them
- Share what you've done so far to grow yourself
- Share what you think your next steps are
- Start small (request a quick video call, or a chat over coffee)
Be respectful of their time; most people are quite busy, and people who will invest extra time to help others do it because they enjoy it — but you'll need to be graceful and understanding if they politely decline.
Overall, the relationships you can forge by directly reaching out to people are incredibly valuable. If approached respectfully, most people are flattered that others consider their expertise and advice high quality and sought-after. If you've put in the legwork to help yourself (and continue to do so) and you aren't simply relying on them to make you an overnight success, you can build strong friendships and sponsorships this way.
Finally, celebrate milestones. This isn't the same as sharing wins. This is for you. When you achieve something, give yourself credit. Feel good about it and celebrate it.
Celebrate in as extravagant or as modest of a way as you want. Go out to a nice dinner, take a small trip, celebrate with family or friends, or alone, if you prefer. Just be sure to stop and afford yourself the recognition you deserve for making progress.
Of course, you should do this if you get promoted, land a new job, or finish a big project. But don't limit milestone recognition to only large events. A nice time to do this is when you review the things you've done recently or your personal goals. For things you've done or goals you've met over the past few months, feel good about that and feel good about feeling good about it. You deserve it!
You can run and run and run, always trying to achieve the next big thing you've set before yourself... but you'll never feel fulfilled if you don't take the opportunity to recognize and reward yourself for your own hard work.
I hope these tips are useful for both advancing your goals and career and also for gaining a sense of accomplishment and fulfillment from the things you do in your life. Tech is a fast-paced industry and you're not alone if you sometimes feel like you can't quite keep up. Think about all the amazing things you've already done in getting where you are now.
Give yourself credit for those things, and I'm looking forward to seeing what you'll do next!
Thanks for reading, and please let me know what tips you have for others, and what you'll be tackling in the future!