Accelerate Your Growth
Landing your first programming job is an uphill battle. While it's important to build a strong resume, learn how to interact with recruiters, and crush your technical interview, all that effort means nothing if you don't have the engineering skills to back it up.
Here are some tips to spend your time productively before you land your first coding job, and get to rely on consistent feedback from coworkers who want to help you level up.
Share Your Work on Social Media
Working on side projects is one of the best ways to accelerate your growth. They help you apply what you've learned from courses and books in a creative way, while giving you a tangible piece of work other engineers can provide feedback on.
Make sure to pick ambitious ideas that will force you to grow. If a new project doesn't make you say "Wow, this sounds hard, and I have no idea where to start", there's a good chance you're not challenging yourself enough.
Once you're happy with your code, consider sharing it on sites like Reddit and LinkedIn. It's hard to grow without feedback from people who are stronger than you. The worst thing you can do is work in a silo for 2 years, consistently reinforce bad habits you didn't realize you had, and quit after realizing your skills aren't good enough to land a job.
Contribute to Open Source Projects
Working on side projects is great, but nothing quite compares to collaborating with experienced engineers on large codebases. Contributing to open-source projects on a site like GitHub is a great way to build your network and level up your skill set.
If you're just starting out, offer to help with tasks that don't require advanced coding skills but are essential to a project's success (e.g., writing documentation, upgrading 3rd-party libraries, fixing bugs). It leaves a strong first impression, and will go a long way.
Getting feedback from experienced engineers is invaluable when you're new. It helps you identify your blind spots and learn new coding techniques. Contribute to a project long enough, and you'll gradually start working on complex features that will help you grow.
You'll also make new friends who might refer you to their employer for an interview. 😉
Check out these tips to find a project that's trying to solve a problem you care about.
Meet Engineers in Your Community
Attending local tech meetups can be a great way to boost your confidence and accelerate your progression. These events provide a supportive environment where you can interact with experienced engineers, who will often be happy to give you advice.
You're learning a new language, and it never hurts to get practice discussing technical topics and articulating your thoughts clearly with people who are more fluent than you.
Engage with Live Streams
There are thousands of live streams on YouTube and Twitch, where experienced developers work through problems, discuss their thought process, and share valuable insights. Observing how veterans tackle coding challenges can provide you with a deeper understanding of best practices and efficient problem-solving techniques. It gives you something to aspire to.
Make sure to engage with the chat and ask questions if something trips you up. Streamers wouldn't boot up their webcam if they didn't enjoy explaining technical concepts and sharing advice.