Frontend Developer Career Path: How I Got My First Dev Job

Frontend Developer Career Path: How I Got My First Dev Job

Balancing Learning with Work, Family, and Life: Resources for Aspiring Developers

9 min read

It's been quite a journey. Initially considering a path in law after high school, I found myself working in a hi-fi/record store for 14 years. While enjoyable I wanted something else, something I've been passionate about all my life: computers.

Contrary to popular belief, coding isn't all about math. Despite my solid math skills, I didn't like it much. I was relieved to discover that frontend development requires... well, 4th-grade math. Three years ago, I started with my coding journey with no specific timeline, opting for low-cost resources due to budget constraints and time commitments. I didn't even know whether I'd like it or whether I'd be able to do it.

I did some Googling and stumbled upon the Stack Overflow survey. It pointed me in the direction of HTML, CSS, and JavaScript (JS). JS is very employable and it can be done on both the frontend and the backend. So, that's where I started. I continued my research to see how and where to learn, and there's a million of options, but don't let it discourage you, just dive in if something looks interesting. I figured out I would start with freeCodeCamp and Udemy

freeCodeCamp is a goldmine for beginners like us. It has a really good concept where you read something about the issue at hand, then jump right into coding the solution. It is extremely beginner friendly, and it has great structure, you can just start with Responsive Web Design Certification and do the challenges. It will lead you through all that you need to know. It also has really good blogs, and news that you can read through and learn a lot. There is one thing that's missing for me though, and that's video.

That's where Udemy comes into play. It's not free, but it won't break the bank either. If you just wait a couple of days every course can be bought for like 15€. One of the most popular courses there is Web Developer Bootcamp by Colt Steele. Similar vibe to freeCodeCamp, but with the bonus of videos guiding you through the whole deal. And the bonus is, you're slowly doing one big and pretty complex web app. I also dove into Colt's Git & Github Bootcamp – essential skills for any dev. I did 2 more courses here, Complete Developers Guide To MongoDB by Stephen Grider, which is a more in-depth course of the database Colt introduces you to in his bootcamp. The other one is Modern JavaScript Bootcamp Course by Colt Steele and Stephen Grider. Oh, and if you're into options, Coursera's another solid choice.

Scrimba, a hybrid platform combining video instruction with interactive coding, became another favorite resource, particularly for learning React. I wish I've come across it sooner, because it combines the video and "hands-on-keyboard" approach. I went through React course by Bob Ziroll, and I can't recommend it highly enough. You can always just start with Frontend developer career path.

During my journey, I dedicated plenty of time to tuning into coding podcasts, a treasure trove of valuable knowledge. Approximately 50% of my tech interview insights stemmed from these podcasts, providing me with crucial concepts and industry jargon. With around 10 hours of weekly commute, I made the most of podcasts, many of which cater to beginners. Let's start with Scrimba podcast, featuring firsthand accounts from coding newcomers who recently secured jobs, as well as insights from seasoned developers aimed at facilitating junior employment. You can even check out the episode with me as a guest. Code Newbie is equally beginner-friendly, offering diverse perspectives from tech seniors sharing their career paths and invaluable advice. For a lighter approach, Syntax podcast and HTML All The Things inject fun into discussions about new tech and entrepreneurial challenges. For a unique blend of whiskey tasting, tech talk, and candid rants, Whiskey, Web, and Whatnot is a delight. Delving into more advanced topics, Hanselminutes delivers Scott Hanselman's expert insights with the finesse of a seasoned professor effortlessly passing wisdom. Rounding off my podcast playlist are JS Party and PodRocket, serving as hubs for the latest in tech trends, projects, and captivating interviews with industry figures. Dive in and enrich your tech journey with these diverse resources.

Books serve as another valuable learning resource. Similar to podcasts, I'm not seeking to learn syntax from books, but rather to grasp concepts and fundamentals, and to refine my problem-solving skills.

  • "Code Simplicity" by Max Kanat-Alexander
  • "Don't Make Me Think (Revisited)" by Steve Krug
  • "Eloquent JavaScript" by Marijn Haverbeke
  • "Computer Science Distilled" by Wladston Ferreira Filho
  • "JavaScript Enlightenment" by Cody Lindley

During my learning journey, I stumbled upon an excellent resource called StackUp, which not only facilitates learning but also offers monetary rewards. It's an innovative platform where completing coding challenges earns you a few dollars. While it may not make you wealthy, the real advantage lies in the feeling of being compensated for your coding efforts. The challenges are generally straightforward, involving tasks like answering questions or making slight modifications to code snippets. Web3 content tends to offer the best payouts.

Additionally, a significant portion of my learning took place on YouTube. While YouTube offers a vast array of educational content, it can be challenging to find structured learning paths. Nonetheless, I found several valuable subscriptions, including Net Ninja, Web Dev Simplified, James Q Quick, and Codevolution. Codevolution, in particular, offers excellent video series tailored for beginners, which I highly recommend. It was through these resources that I gained proficiency in Next.js, a React framework utilized in many of my projects, but more on those later.

Documentation is indeed a fantastic learning resource. When I began delving into React and Next.js, their respective documentation became my primary source of learning. Surprisingly, certain concepts absorbed from the documentation remained ingrained in my memory better than those from video tutorials. While I didn't complete the CSS documentation in its entirety, skimming through it clarified numerous concepts for me. Many argue that once you have a foundational understanding of coding, diving into the documentation is the most efficient and effective way to grasp new technologies.

In the culmination of my learning journey, I ventured into creating projects, although many of which remained unfinished and unpushed to MVP (minimum viable product) status. Initially, I entertained with project ideas, keeping clear of common projects like to-do apps. However, I recognized the importance of building a portfolio. After several iterations, I finally completed my portfolio website using Next.js. Given my beginner developer status, the site features minimal content. I acquired a budget-friendly domain name and effortlessly deployed the app via Vercel, leveraging their seamless integration with Next.js. Additionally, I delved into essential aspects such as optimizing for search engine crawlers, implementing basic SEO practices, and prioritizing site speed and accessibility.

My second project addressed a practical need at the record store where I worked. To streamline the tolling process of manually entering album data. This application featured a form for inputting barcodes, which would then retrieve relevant data from Discogs, a prominent music database and marketplace. The fetched data was organized into a table with nearly 100 columns in a specific sequence, facilitating seamless transfer to our point-of-sale software. While aesthetics and SEO were secondary concerns given its utility nature, the app significantly improved operational efficiency for our team.

Lastly, I embarked on creating an online price list for a local bar, facing the immediate challenge of tight deadlines. Opting for a hard-coded approach initially, I swiftly delivered the essential functionalities. Subsequently, I refined the site at a more leisurely pace. Built with MongoDB and Next.js, the platform enables the bar owner (and myself) to perform CRUD operations, empowering them to effortlessly manage items.

After learning coding, journey didn't end there. Crafting a well-designed CV is crucial, and there are numerous platforms offering professional templates either for a small fee or for free. Similarly, optimizing your LinkedIn profile is imperative, as it serves as a vital tool for showcasing your skills and experience. Engaging with communities, such as Discord channels associated with learning resources, is another valuable step to take. Additionally, writing blog posts not only reinforces your own learning but also contributes to the community by sharing your insights and experiences. Contributing to open-source projects is also highly beneficial for networking and gaining practical experience.

However, it's essential to acknowledge that my advice in last paragraph is based on research rather than personal experience. While I devoted considerable effort to my CV and LinkedIn profile, I admittedly fell short in networking and active participation in Discord channels. Blogging and contributing to open-source projects also took a back seat due to time constraints and competing priorities. Despite these shortcomings, I was fortunate to secure a job opportunity, largely thanks to a referral from a friend who shared my portfolio with the hiring company. This underscores the importance of networking, as relying solely on online profiles may not always yield desired outcomes in a competitive job market. Really try to invest time and effort in building your connections.

Ready or not, it's time to hit the job market! You may never feel entirely ready, or you might feel prepared long after you could have already landed a position. This advice, echoed by countless individuals, initially seemed dubious to me as well. However, I can personally vouch for its validity. Remember, you're not just offering coding skills; your unique experiences and abilities are valuable assets. There are companies out there seeking precisely what you bring to the table. The individuals who hired me expressed admiration for my portfolio site, and during the technical interview, I demonstrated a level of knowledge that exceeded their expectations for a junior role applicant. This indicates that I could have begun applying for jobs sooner than I did. Trust in your abilities, showcase your skills through your portfolio, and land your dream job.