The beginning stages of a career in engineering can be daunting. You’re trying to make the most of the opportunity at your new job and learning as much as you can, and as a result, it can be hard to find time and energy to focus on growth. Here are five practical tips that can help you grow as you navigate your engineering career:
- Identify and close gaps.
- Own something and make it yours.
- Share, and help others close their gaps.
- Track and share your progress.
- Mentor and build your leadership skills.
1. Identify and Close Gaps
It can be common to be in meetings where teammates are throwing around technical terms, and you don’t understand half of what is said. Rather than nodding your head and looking deeply interested when you’re confused or unsure, start by acknowledging that you don’t know what you don’t know. There's power in having awareness of knowledge gaps. If you catch buzz words that are repeated several times, that might indicate something important to note and look into later. If you’re in a team with diverse skill sets, identify the people who have the skills you’d love to learn and pair with them. Pair programming is a great way to learn how someone else approaches and solves problems and learn handy tools and techniques related to your craft. In engineering, one of the best ways to learn new things is by doing, so try to get involved in parts of a project you’re not familiar with and try to build something. Be a constant learner!
2. Own Something and Make it Yours
Take ownership of a specific portion of your team’s project and work on any tasks related to that. Taking ownership means seeing to it that the work is done from start to finish, spearheading technical decision-making concerning that area, and communicating with the team about the work that has been done. We often talk about trust batteries here at Shopify, and a sure way to charge your trust battery is by delivering the work you have committed to and communicating with your lead & team. The article Showing Ownership as a Developer from The Rising Dev explains ownership in more detail. A great benefit of taking ownership is that it provides you the opportunity to become a subject-matter expert in that area. Before you know it, people will come asking for your opinion on it.
3. Share and Help Others Close Their Gaps
One of the best ways to check that you’ve truly learned something is by teaching someone else what you’ve learned, even better if you’re able to explain this to someone who has no prior knowledge about the topic. After you have spent time closing your knowledge gaps, share this with people through technical talks, writing articles, presentations, show and tell, and project demos. If you have taken ownership of a part of a project and had to make technical decisions and tradeoffs, properly document these for other people who will interact with your code and for future reference to remind yourself of why you made those decisions.
4. Track and Share Your Progress
At Shopify, we always say “do things, tell people”–let your leads and colleagues know what you’re up to, what you’re learning, what you’ve just learned, and what you have accomplished. Not everyone will automatically recognize the strides you’re taking. Your lead probably has several other reports, making it harder to track every one of your accomplishments, and your colleagues are probably also focused on their own work. You need to be a good advocate for yourself by tracking your progress and sharing this with your lead periodically or before impact reviews. In Get your work recognized: write a brag document, Julia Evans beautifully outlines how to write a “brag document” for this purpose. Your peers can also be great advocates for you if your impact reviews involve peer check-ins.
5. Mentor and Build Your Leadership Skills
After you’ve spent time growing your skills, volunteer to mentor or be a buddy to an intern. Show them how to navigate their new job, teach them valuable skills you’ve learned, and encourage them to try new things, just like you did. Schedule regular check-ins with them and if you identify things that can improve their experience, discuss this with your lead. By doing these things, you’ll be building your leadership skills, which is very important in growing your career.
Growth requires intentionality–you have to be deliberate about your effort to grow in your career. One way to do this is by writing a professional development plan, and following through with it. A professional development plan is like a recipe for (professional) success, and what good is a recipe if you don’t use it afterward?
When I interviewed at Shopify in 2019 as a new grad developer and asked what the growth prospects would look like for me here, I was told that Shopify maintains an “own your own development” program. Over two years later, I now know what this means: owning my own development means taking steps to close my knowledge gap in React, Redux, and GraphQL, contributing to technical designs and documentation, sharing my knowledge through articles like this, volunteering to give technical talks and presentations at external events on behalf of Shopify, being a buddy to several interns and mentoring high school students through programs like Technovation and STEMing Up.
Ebun Segun is a software developer working primarily in Shopify’s Orders and Fulfillment domain. Since starting out as a backend developer in 2019 mainly writing Ruby code, she has transitioned into frontend development, involving the use of React Native and GraphQL. When she’s not working, she takes care of her numerous houseplants, dabbles in fashion design, or volunteers for programs that encourage women in high school to pursue careers in STEM. You can reach out to her on LinkedIn or Twitter.
Wherever you are, your next journey starts here! If building systems from the ground up to solve real-world problems interests you, our Engineering blog has stories about other challenges we have encountered. Intrigued? Visit our Engineering career page to find out about our open positions and learn about Digital by Default.