<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ career advice - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Browse thousands of programming tutorials written by experts. Learn Web Development, Data Science, DevOps, Security, and get developer career advice. ]]>
        </description>
        <link>https://www.freecodecamp.org/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ career advice - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Fri, 22 May 2026 10:07:31 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/news/tag/career-advice/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ How to Prepare for Technical Job Interviews –  Based on My Experience Landing a Job ]]>
                </title>
                <description>
                    <![CDATA[ Hi, I’m Ilyas. I’m a web developer, and this is my story about how I struggled with interviews for a long time and what finally helped me break through. I’ll talk about what failing basic interview questions taught me about recall, preparation, and s... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-prepare-for-technical-job-interviews-based-on-my-experience-landing-a-job/</link>
                <guid isPermaLink="false">694c23da6c9dee59dd506fea</guid>
                
                    <category>
                        <![CDATA[ Web Development ]]>
                    </category>
                
                    <category>
                        <![CDATA[ interview preparations ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Junior developer  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Interview tips ]]>
                    </category>
                
                    <category>
                        <![CDATA[ interview ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Ilyas Seisov ]]>
                </dc:creator>
                <pubDate>Wed, 24 Dec 2025 17:33:14 +0000</pubDate>
                <media:content url="https://cdn.hashnode.com/res/hashnode/image/upload/v1766597367293/515dd71a-fb65-4508-bdd2-39b103ddb438.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>Hi, I’m Ilyas. I’m a web developer, and this is my story about how I struggled with interviews for a long time and what finally helped me break through. I’ll talk about what failing basic interview questions taught me about recall, preparation, and smarter job searching.</p>
<p>If you’re a junior, mid-level, or self-taught developer who keeps getting rejected and you don’t fully understand why, I hope this helps.</p>
<p>Here’s what I’ll cover:</p>
<ol>
<li><p><a class="post-section-overview" href="#heading-my-18-month-job-search-struggle">My 18-Month Job Search Struggle</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-the-interview-problem-i-didnt-expect">The Interview Problem I Didn’t Expect</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-discovering-active-recall-and-flashcards">Discovering Active Recall and Flashcards</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-my-interview-preparation-system">My Interview Preparation System</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-the-results">The Results</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-changing-how-i-looked-for-jobs">Changing How I Looked for Jobs</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-turning-my-system-into-a-small-tool">Turning My System Into a Small Tool</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-lessons-i-learned">Lessons I learned</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-final-thoughts">Final Thoughts</a></p>
</li>
</ol>
<h2 id="heading-my-18-month-job-search-struggle">My 18-Month Job Search Struggle</h2>
<p>For 18 months, I was trying to land a remote or relocation web developer job.</p>
<p>During that time:</p>
<ul>
<li><p>I applied to more than 1,000 positions</p>
</li>
<li><p>I went through around 20–30 interviews</p>
</li>
<li><p>I failed most of them</p>
</li>
</ul>
<p>It was exhausting. I felt like I was putting in a lot of effort but getting almost no results. Over time, I started doubting my skills and wondering whether I would ever find a job I’d actually be satisfied with.</p>
<p>What made this even more confusing was that a few years earlier, in 2021, I had found a remote job at a US company in just three weeks – with almost no experience</p>
<p>Something clearly wasn’t working anymore.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1766404237516/f3465911-0d09-458b-9dd6-a91ee03524cf.jpeg" alt="real screenshot from one my unsuccessful interviews from Turing.com" class="image--center mx-auto" width="687" height="490" loading="lazy"></p>
<h2 id="heading-the-interview-problem-i-didnt-expect">The Interview Problem I Didn’t Expect</h2>
<p>After dozens of interviews, I noticed a pattern: I wasn’t failing because I couldn’t solve complex algorithm problems or build features under pressure. I was failing on basic technical questions.</p>
<p>Questions like:</p>
<ul>
<li><p><strong>“What are portals in React?”</strong></p>
</li>
<li><p><strong>“Can you explain how an HTTP GET request works?”</strong></p>
</li>
</ul>
<p>These were not hard questions. They were things I had learned before. But during interviews, under pressure, <strong>I just couldn’t recall.</strong> Or simply I skipped it during preparation because there were no systems in place.</p>
<p>That’s when I realized the real issue: I didn’t have a problem understanding concepts. I had a problem recalling them quickly.</p>
<p>My first instinct was to study more. More tutorials, more articles, more videos.</p>
<p>But passive learning didn’t fix the problem. I still froze during interviews. What I actually needed was a way to <strong>train my memory</strong>, not just consume information.</p>
<h2 id="heading-discovering-active-recall-and-flashcards">Discovering Active Recall and Flashcards</h2>
<p>That’s when I came across flashcards and the concept of <strong>active recall</strong>.</p>
<p>Active recall means testing yourself repeatedly on what you’ve learned instead of just rereading material. You try to answer a question from memory first, then check the answer. This approach has been backed by research for more than a century.</p>
<p>I started practicing small, specific concepts this way, like:</p>
<ul>
<li><p>React fundamentals</p>
</li>
<li><p>JavaScript basics</p>
</li>
<li><p>HTTP methods</p>
</li>
<li><p>Browser behavior</p>
</li>
</ul>
<p>I repeated them until recalling the answer felt automatic.</p>
<p>This made a huge difference during interviews.</p>
<p>Flashcards help you cut through the noise and actually learn what matters. It's not just about memorizing facts – it's about really understanding, remembering fast, and building a solid base in every concept you study.</p>
<p>So to help you prepare for your interviews, I’ve taken years of experience and scientific learning methods and turned them into a tool and approach that gives you the right info at the right time.</p>
<h2 id="heading-my-interview-preparation-system">My Interview Preparation System</h2>
<p>Once I found the right learning method, I built a simple system around it.</p>
<h3 id="heading-step-1-ask-what-to-prepare-for">Step 1: Ask What to Prepare For</h3>
<p>Instead of guessing what to study, I started asking recruiters directly:</p>
<blockquote>
<p>“What topics should I prepare for the technical interview?”</p>
</blockquote>
<p>Surprisingly, many of them replied with a clear list, which helped me focus only on what actually mattered and avoid over-preparing random topics. In my experience, many HR reps are quite helpful to job applicants.</p>
<p>For example, when I applied for a position as a Frontend Web Developer in React, the HR specialist advised me to focus mainly on React and JavaScript. So I prepared for all the popular questions around hoisting (JS), the event loop (JS), how react works under the hood, what props are and how they work, and so on.</p>
<p>Overall, that interview went well – but when I got a question on React Portals, I couldn’t explain it properly. And so I didn’t get the position. But I don’t blame myself for this one, as that’s a very rare topic. 😊</p>
<p>I also applied for another Front End Developer role where the HR specialist advised me to prepare mainly for questions about GSAP, Framer Motion, and React/Next JS. This made sense, as the company mainly builds modern animated websites.</p>
<p>In my interview, the theory round went well, but I failed the take home assignment. I realized then that I didn’t have enough skills in these areas.</p>
<p>At another company, I asked HR about the cultural interview, which was the last round. The rep said: ”<em>No worries, all the hard work is done from your side. Prep for just a human dialog.</em>”</p>
<p>And for the last application I submitted (and after which I actually got the job offer), the HR specialist told me to strongly prepare for CSS – especially Flexbox and Grid<strong>.</strong> This made sense, as the position was for an HTML markup developer. And so I practiced all the ins and outs for these topics, even the more rare ones.</p>
<p>I use the same approach for each round of interviews.</p>
<h3 id="heading-step-2-use-flashcards-with-ai-carefully">Step 2: Use Flashcards (With AI Carefully)</h3>
<p>I used ChatGPT to generate flashcards for each topic and reviewed them daily.</p>
<p>One important thing I learned: <strong>AI can be wrong sometimes.</strong> To reduce mistakes, I started adding links to official documentation in my prompts so the answers were grounded in reliable sources.</p>
<p>I kept sessions short and consistent. That consistency mattered more than long study sessions.</p>
<blockquote>
<p><strong>AI mistakes</strong> was the reason I created <a target="_blank" href="https://99cards.dev/">99cards.dev</a></p>
</blockquote>
<p>Here is the prompt I use in ChatGPT:</p>
<p><em>You are a web development expert with 20 years of experience. Your task is to help me to prepare for the interview.</em></p>
<p><em>Prepare 10 flashcards on CSS Flexbox topics. Format one question with four answers. One answer is correct.</em></p>
<p><em>You're going to serve all the questions one by one. After I answer, you give me feedback and then give me the next question.</em></p>
<p>Note that you should tweak your prompts for your needs, and based on what you need to review.</p>
<p>You can experiment with various factors, such as:</p>
<ul>
<li><p><strong>Difficulty:</strong> beginner or advanced</p>
</li>
<li><p><strong>Specificity:</strong> from vague (for example: I want to practice with CSS) to highly specific (for example: I want to practice with the flex property in CSS Flexbox)</p>
</li>
<li><p><strong>Number of questions:</strong> sweet spot is between 10 and 20</p>
</li>
<li><p><strong>Add context:</strong> good practice is to add links to official docs, as it decreases the chances of AI hallucination</p>
</li>
</ul>
<p>Here is a typical flashcard created by ChatGPT:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1766489222813/57a6b0eb-de79-46a3-89d6-aaeeeffdf04e.png" alt="flashcard created with ChatGPT" class="image--center mx-auto" width="762" height="687" loading="lazy"></p>
<p>If you provide an answer, you’ll get feedback like this:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1766489282577/910c04a0-6f2a-4304-9f39-3644b2c40bd9.png" alt="feedback by ChatGPT" class="image--center mx-auto" width="1327" height="674" loading="lazy"></p>
<h2 id="heading-the-results">The Results</h2>
<p>After a few weeks, interviews felt very different.</p>
<p>I was calmer. I answered basic questions without panicking. I could explain concepts clearly and confidently.</p>
<p>In my final interview process, I passed four rounds in a row and scored 95% on the technical test.</p>
<p>Soon after, I received an offer: $5,500 per month and a paid relocation package for my family and me.</p>
<p>For the first time in a long while, my effort finally matched the results.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1766404662077/70e690b2-6fd0-448c-a83e-456ab1b12555.jpeg" alt="screenshot of job offer" class="image--center mx-auto" width="786" height="989" loading="lazy"></p>
<h2 id="heading-changing-how-i-looked-for-jobs">Changing How I Looked for Jobs</h2>
<p>About six weeks before getting the offer, I also changed <strong>where</strong> I searched for jobs.</p>
<p>Instead of relying only on large job platforms, I started using smaller communities like Telegram job groups.</p>
<p>This helped for two reasons:</p>
<ol>
<li><p><strong>Less competition</strong>: many smaller companies post roles there with fewer applicants</p>
</li>
<li><p><strong>Direct communication</strong>: I could message recruiters before applying</p>
</li>
</ol>
<p>Before submitting an application, I would ask:</p>
<blockquote>
<p>“I saw this position. Here’s my CV and LinkedIn. Am I a good fit?”</p>
</blockquote>
<p>If the answer was yes, I applied. If not, I moved on immediately.</p>
<p>This saved me a lot of time and energy.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1766404678028/9e6a2452-2c6c-48b8-8494-629742865a70.png" alt="job groups in Telegram" class="image--center mx-auto" width="722" height="595" loading="lazy"></p>
<h2 id="heading-turning-my-system-into-a-small-tool">Turning My System Into a Small Tool</h2>
<p>While preparing for interviews, I created thousands of flashcards for myself. Managing them in notes became difficult, so I eventually turned them into a small tool called <a target="_blank" href="https://99cards.dev/"><strong>99cards.dev</strong></a>.</p>
<p>It’s simply a collection of fact-checked web development flashcards grouped by topic, based on the same approach that helped me stop failing basic interview questions.</p>
<p>Here are some screenshots from the app:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1766490090653/a54606f6-91d1-4302-8f39-15fa6d2d26a6.png" alt="99cards.dev - UI screenshots" class="image--center mx-auto" width="1920" height="1094" loading="lazy"></p>
<h2 id="heading-lessons-i-learned">Lessons I Learned</h2>
<p>Here are a few takeaways from this experience:</p>
<ul>
<li><p>Failing interviews doesn’t always mean you lack skills</p>
</li>
<li><p>Passive learning is not enough for interview prep</p>
</li>
<li><p>Being able to recall basics quickly matters a lot</p>
</li>
<li><p>Job searching is a skill, not just a numbers game</p>
</li>
<li><p>Consistency beats cramming every time</p>
</li>
</ul>
<h2 id="heading-final-thoughts">Final Thoughts</h2>
<p>If you’re struggling with interviews right now, especially as a junior, mid-level, or self-taught developer, don’t assume you’re bad at what you do.</p>
<p>In my case, the problem wasn’t effort or talent. It was preparation and approach.</p>
<p>I also created a <a target="_blank" href="https://99cards.dev/checklists"><strong>free interview checklist</strong></a> based on my experience, covering HR, technical, behavioral, system design, live coding, take-home tasks, algorithms, and cultural fit.</p>
<p>I hope this story saves you some time and stress.</p>
<p>You’re often just one good interview away.<br>— Ilyas</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Why Every Student Should Join Hackathons ]]>
                </title>
                <description>
                    <![CDATA[ After graduation, I noticed many fresh grads struggling to land jobs. It wasn’t because they lacked effort or qualifications. The real issue was that what we learn in university doesn’t fully match what employers are looking for. Now, with the rise o... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/why-every-student-should-join-hackathons/</link>
                <guid isPermaLink="false">68c2272573bc3e829c0afc65</guid>
                
                    <category>
                        <![CDATA[ hackathon ]]>
                    </category>
                
                    <category>
                        <![CDATA[ self-improvement  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Students ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Tech With RJ ]]>
                </dc:creator>
                <pubDate>Thu, 11 Sep 2025 01:34:29 +0000</pubDate>
                <media:content url="https://cdn.hashnode.com/res/hashnode/image/upload/v1757553697531/03401b7c-4970-4680-a65d-31e360b0e645.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>After graduation, I noticed many fresh grads struggling to land jobs. It wasn’t because they lacked effort or qualifications. The real issue was that what we learn in university doesn’t fully match what employers are looking for. Now, with the rise of AI coding and the increasing competitiveness of the tech job market, junior software engineers face even more obstacles.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1757178191382/dfd0e8b8-a8a8-41ec-b881-a17bd22e7f24.jpeg" alt="Chart from 2015–2025 showing junior roles declining slightly after 2022, while senior roles rise steadily, especially after 2020." class="image--center mx-auto" width="600" height="400" loading="lazy"></p>
<p>A recent <a target="_blank" href="https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5425555">Harvard-backed study</a> of 285,000 firms found that junior software engineering roles have declined by 23%, while senior roles have increased by 14%.</p>
<p>Part of the reason is that many graduates come out of university with similar academic results. A good CGPA matters, but on its own, it rarely shows employers how you will perform in a real work setting. At the same time, with AI boosting productivity, companies often see more value in pairing senior developers with AI tools than hiring juniors who still need time to adapt.</p>
<p>That is exactly why hackathons matter. They give students a chance to stand out by showing they can solve real problems, work with real technologies, and create solutions that add value beyond what AI can do. It is one of the clearest ways to build credibility and open doors in a market where traditional first jobs are getting harder to land.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1757177567607/7ed768a1-3967-4530-a2b7-4fcebfe87db0.jpeg" alt="Group photo for the author's team at the Hilti IT Competition 2024" class="image--center mx-auto" width="600" height="400" loading="lazy"></p>
<p>I did not begin with a big international hackathon. My first hackathon was a small one on campus, and to be honest, I almost did not go. I had never built anything outside of class assignments, and I worried I would not be good enough. In the end I signed up anyway, even though I did not have a full team and had no idea what to expect.</p>
<p>That first experience showed me that hackathons are not about being an expert, they are about being willing to learn on the spot. I made mistakes, but I also picked up new skills and met people who were just as nervous and curious as I was. The point is that hackathons are meant for learning and experimenting, just like university, only here you get to do it in a setting closer to real-world. Realizing that took the pressure off and gave me the confidence to join bigger competitions later.</p>
<p>When my team “Sweetzerland” joined the <a target="_blank" href="https://itcompetition.hilti.group/">Hilti IT Competition 2024</a> with support from my university, Asia Pacific University of Malaysia, it was not the usual hackathon. Instead of a weekend sprint, it lasted months. We had time to do research, design the system, build it out, and finally pitch it.</p>
<p>The process was tough, but it gave us real exposure that lectures rarely provide, and it opened doors I never expected. I even used it as the solution for my final year project, which later received the best project award during graduation.</p>
<p>Here’s why I believe every student should try participating in as many hackathons as possible during their college/university days.</p>
<h2 id="heading-table-of-contents">Table Of Contents</h2>
<ul>
<li><p><a class="post-section-overview" href="#heading-you-meet-people-who-care-as-much-as-you-do">You Meet People Who Care as Much as You Do</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-from-case-studies-to-real-solutions">From Case Studies to Real Solutions</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-teamwork-and-feedback">Teamwork and Feedback</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-opportunities-and-growth">Opportunities and Growth</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-its-simply-fun">It’s Simply Fun</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-where-to-find-hackathons">Where to Find Hackathons</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-final-thoughts">Final Thoughts</a></p>
</li>
</ul>
<h2 id="heading-you-meet-people-who-care-as-much-as-you-do">You Meet People Who Care as Much as You Do</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1757173961904/53bd538a-e26b-42c5-afe6-5305e41743bc.jpeg" alt="Group photo of all participants at Hilti IT Competition 2024" class="image--center mx-auto" width="600" height="400" loading="lazy"></p>
<p>One of the best parts of hackathons is the people you meet. You are surrounded by others who are just as motivated to solve problems and willing to put in the effort to make their ideas work. Everyone brings their own strengths, whether it is coding, design, research, or pitching, and you quickly see how much energy and passion fills the room.</p>
<p>I remember in my previous hackathon, some teams were experimenting with VR while others used machine learning, all tackling the same theme in completely different ways. It was exciting to see how many different approaches people could bring to the same problem. And when the community is small, you often find similar participants in various hackathons.</p>
<p>That shared drive creates a special kind of connection. The people you brainstorm with at 2 a.m. or share a quick meal with between sessions often become friends, collaborators, or mentors long after the hackathon ends. It is not just about competing, it is about finding a community of people who are just as curious and committed as you are.</p>
<h2 id="heading-from-case-studies-to-real-solutions">From Case Studies to Real Solutions</h2>
<p>In university, most projects come with fictional case studies and guided hints. Hackathons are different. You are given a theme and have to figure out the real problem behind it, design a solution that actually fits how the company/industry works, and make sure it is viable to roll out with a clear return on investment. That shift from schoolwork to solving real-world issues changes the way you think.</p>
<p>Along the way, you also end up using industry standard tech stacks, solving problems under real constraints, and learning how to push past self-doubt. Imposter syndrome is common when you see so many great ideas around you. Our brain is built for survival, so it naturally reacts with fear when facing something new and uncertain. What helped me was reframing that fear, not as proof that I did not belong, but as proof I was stepping into a new territory. Breaking problems into smaller wins, asking questions openly, and remembering that even the most confident people in the same room will feel the same way made it easier to keep going. Over time, the progress you see in yourself becomes the best confidence boost of all.</p>
<h2 id="heading-teamwork-and-feedback">Teamwork and Feedback</h2>
<p>What surprised me most in a hackathon was how much the team dynamic mattered. I usually worked on the frontend or as a full stack developer, but I quickly learned that code alone would not carry the project. The real challenge was keeping research, design, coding, and slide preparation all moving in parallel. With limited time, you cannot afford to wait for one task to finish before starting another, so clear delegation and trust in each teammate’s role are critical.</p>
<p>A good teammate is not just skilled, but committed. The teams that thrived were the ones where people showed up consistently, shared ideas openly, and pushed through even when the energy dipped. In longer hackathons especially, perseverance mattered more than raw talent.</p>
<p>The feedback from mentors also changed how I thought about building solutions. In one hackathon, a mentor asked us, “What is the main feature in your solution?” That hit me, because we had built a system that did a bit of everything, but nothing stood out. After that, we focused on one main feature we had researched, the one we knew could create the biggest impact for the business. We spent most of our time refining that flow and only mentioned the smaller features briefly.</p>
<p>That lesson stuck. As software engineers, it is tempting to show how many features we can build, because our mindset is often stuck at “more features mean more skillful, which means a higher chance of winning.” That may work for school projects, but businesses care about ROI. They want to know if your solution is strong enough to justify the resources it would take to implement. Focusing on the feature with exponential upside not only made our pitch clearer, but it also shifted how I think about software engineering as a whole. It is not just about writing code, but about creating value that matters to businesses.</p>
<h2 id="heading-opportunities-and-growth">Opportunities and Growth</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1757173781942/0d38719d-4a9b-425d-8445-11980208189d.jpeg" alt="News clipping from The Star about Author's team winning the Hilti IT Competition 2024 and heading to Switzerland" class="image--center mx-auto" width="600" height="400" loading="lazy"></p>
<p>Hackathons open doors in ways you might not expect. When I started applying for jobs, having hackathon experience on my CV made it easier to stand out. Recruiters saw it as proof that I could solve problems under pressure and collaborate with others.</p>
<p>Some opportunities also come in unexpected forms. For me it was getting featured in <a target="_blank" href="https://www.thestar.com.my/news/education/2024/08/18/to-the-land-of-the-alps-we-go">The Star</a>, Malaysia’s national newspaper, which showed me that hackathons can give you visibility and credibility beyond the competition itself.</p>
<p>Most importantly, hackathons shifted my mindset. After competing I found myself saying yes to more opportunities and pushing past my comfort zone. And once I did it, I kept doing it. Each step gave me more exposure and confidence, because the last time I did that, it gave me a life-changing experience. This has benefitted me in many ways once I started working. When we are young, we have time, energy, and fewer commitments. That is when growth can be exponential if we take risks with minimal downsides.</p>
<h2 id="heading-its-simply-fun">It’s Simply Fun</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1757176759749/4929a1ab-f5f4-4916-be4b-44bb0ce34cd0.jpeg" alt="Group photo of Author's team at Switzerland" class="image--center mx-auto" width="600" height="400" loading="lazy"></p>
<p>The most important point is that Hackathons are also fun. You meet people, you get swags, you grow your portfolio, you get cold hard cash, and sometimes you get to travel. And out of all the hackathons, for me it meant a trip to Switzerland, something I never imagined a student hackathon would bring. And I wouldn’t change a thing if I was given them same choice again.</p>
<h2 id="heading-where-to-find-hackathons"><strong>Where to Find Hackathons</strong></h2>
<p>If you’re ready to try one, here are some platforms that regularly host student-friendly hackathons:</p>
<ul>
<li><p><a target="_blank" href="https://mlh.io/">Major League Hacking (MLH)</a>: Global student hackathons, both online and in-person.</p>
</li>
<li><p><a target="_blank" href="https://devfolio.co/">Devfolio</a>: A hub for hackathons in AI, Web3, fintech, and more.</p>
</li>
<li><p><a target="_blank" href="https://devpost.com/">Devpost</a>: Popular for online hackathons with international participation.</p>
</li>
<li><p><a target="_blank" href="https://www.hackathon.com?utm_source=chatgpt.com">Hackathon.com</a>: A global directory of upcoming events.</p>
</li>
</ul>
<p>It’s also worth keeping an eye on hackathons run by universities, or by companies like Google and AWS. Sometimes they have student ambassadors who organize hackathons on campus, and many of these events are open globally. These can be great entry points to start building experience.</p>
<h2 id="heading-final-thoughts"><strong>Final Thoughts</strong></h2>
<p>If you have never joined a hackathon, the question is simple, what do you have to lose? The answer is nothing. There are no downsides and only benefits. You gain skills, exposure, and experiences you will carry long after graduation.</p>
<p>Looking back, one regret I have is that I only joined a few during my four years of university. Even with the handful I did, the impact was huge. It makes me wonder how much more I could have learned and experienced if I had joined more. Every hackathon brings something new, it could be a lesson, a connection, or even an opportunity you never saw coming.</p>
<p>Don’t wait until you feel ready. Sign up, show up, and figure it out along the way. Your future self will thank you.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Getting a developer job in 2025 with Lane Wagner [Podcast #157] ]]>
                </title>
                <description>
                    <![CDATA[ On this week's episode of the podcast, I interview Lane Wagner. He's a software engineer, prolific contributor to freeCodeCamp, and founder of the Boot.dev online learning platform. We talk about: Lane’s thoughts on college and computer science degr... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/getting-a-developer-job-lane-wagner-podcast-157/</link>
                <guid isPermaLink="false">67943609f67368a6fc69bdb4</guid>
                
                    <category>
                        <![CDATA[ learn to code ]]>
                    </category>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Quincy Larson ]]>
                </dc:creator>
                <pubDate>Sat, 25 Jan 2025 00:53:29 +0000</pubDate>
                <media:content url="https://cdn.hashnode.com/res/hashnode/image/upload/v1737766278527/f41b773c-a742-43a6-b4b0-e423966f4e52.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>On this week's episode of the podcast, I interview Lane Wagner. He's a software engineer, prolific contributor to freeCodeCamp, and founder of the Boot.dev online learning platform.</p>
<p>We talk about:</p>
<ul>
<li><p>Lane’s thoughts on college and computer science degrees</p>
</li>
<li><p>Back end development and why it resonates with him</p>
</li>
<li><p>Why he's so enthusiastic about the Go Programming Language</p>
</li>
<li><p>What he’s learned about how people learn</p>
</li>
</ul>
<p>You can watch the interview on YouTube:</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/wjj2gZbcoNw" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p> </p>
<p>Or you can listen to the podcast in Apple Podcasts, Spotify, or your favorite podcast app. Be sure to follow the freeCodeCamp Podcast there so you'll get new episodes each Friday.</p>
<p>Support comes from the 11,043 kind folks who support freeCodeCamp through a monthly donation. Join these kind folks and help our mission by going to <a target="_blank" href="https://www.freecodecamp.org/donate">https://www.freecodecamp.org/donate</a></p>
<p>Quincy mentions the number of engineers graduating every year from Indian and Chinese universities (including computer science majors, which is usually the most popular engineering degree). It's hard to find exact numbers but...</p>
<ul>
<li><p>India: more than 1 million engineering graduates / year</p>
</li>
<li><p>China: more than 1 million engineering graduates / year</p>
</li>
<li><p>US: only about 200,000 engineering graduates / year</p>
</li>
</ul>
<p>Links we talk about during our conversation:</p>
<ul>
<li><p>Lane's 4-hour course on how to get a job as a developer: <a target="_blank" href="https://www.freecodecamp.org/news/how-to-get-a-developer-job/">https://www.freecodecamp.org/news/how-to-get-a-developer-job/</a></p>
</li>
<li><p>Lane's 5-hour HTTP Networking course: <a target="_blank" href="https://www.freecodecamp.org/news/http-networking-protocol-course/">https://www.freecodecamp.org/news/http-networking-protocol-course/</a></p>
</li>
<li><p>Lane's SQL for Web Developers course: <a target="_blank" href="https://www.freecodecamp.org/news/sql-for-web-devs/">https://www.freecodecamp.org/news/sql-for-web-devs/</a></p>
</li>
<li><p>Lane's freely available books published through freeCodeCamp Press: <a target="_blank" href="https://www.freecodecamp.org/news/author/wagslane/">https://www.freecodecamp.org/news/author/wagslane/</a></p>
</li>
<li><p>Khan Academy founder's talk on mastery learning: <a target="_blank" href="https://www.youtube.com/watch?v=-MTRxRO5SRA">https://www.youtube.com/watch?v=-MTRxRO5SRA</a></p>
</li>
<li><p>The Zone of Proxmial Development education concept: <a target="_blank" href="https://en.wikipedia.org/wiki/Zone_of_proximal_development">https://en.wikipedia.org/wiki/Zone_of_proximal_development</a></p>
</li>
</ul>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to Choose a Tech Stack for Your SaaS Product – Lessons from a Developer ]]>
                </title>
                <description>
                    <![CDATA[ As a developer, I've seen how choosing the "right" tech stack can be a double-edged sword. I often fell into the trap of chasing shiny new technologies, thinking they were the key to building the next great product. But experience has taught me that ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/choose-a-tech-stack-for-your-saas-product/</link>
                <guid isPermaLink="false">66d039d6daf2a38a6b1e1cfd</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ SaaS ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Juan Cruz Martinez ]]>
                </dc:creator>
                <pubDate>Fri, 24 May 2024 08:52:18 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2024/05/Live-Stream-Post.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>As a developer, I've seen how choosing the "right" tech stack can be a double-edged sword. I often fell into the trap of chasing shiny new technologies, thinking they were the key to building the next great product. But experience has taught me that prioritizing speed to market trends often trumps the pursuit of technological ideals.</p>
<p>In the early stages of a SaaS product, it's easy to get caught up in the excitement of designing elaborate architectures, experimenting with bleeding-edge frameworks, and optimizing every line of code. While these things are important, they can also become significant roadblocks if taken too far.</p>
<p>I've seen projects stall for months as developers (myself) debated the merits of different databases or attempted to master a complex framework before writing a single line of product code. This kind of overengineering can drain resources, delay launches, and ultimately put the entire project at risk.</p>
<p>One of the most valuable lessons I've learned is the power of leveraging familiar technologies. When you and your team know a toolset inside and out, you can build features faster, troubleshoot more efficiently, and deliver a more stable product.</p>
<p>This doesn't mean you should never learn new things. But in the early stages of a product, where speed is crucial, it's often more beneficial to focus on building something that works, rather than something that's technically impressive but takes forever to complete.</p>
<p>As your product matures and gains traction, there will be opportunities to experiment with new technologies and optimize your tech stack. But in the beginning, the most important thing is to get your product in front of users and start gathering feedback.</p>
<h2 id="heading-what-tech-stack-should-i-use">What Tech Stack Should I Use?</h2>
<p>There's no one-size-fits-all answer when it comes to the perfect tech stack. The best choice for you will depend on several factors:</p>
<ul>
<li><strong>Your Use Case:</strong> What kind of SaaS product are you building? Different types of applications may benefit from different technologies. For example, a real-time collaboration tool might prioritize WebSocket and reactive frameworks, while a data-heavy analytics platform might favor a robust database and powerful server-side processing.</li>
<li><strong>Your Team's Expertise:</strong> Don't underestimate the value of familiarity. If your team is already proficient in a particular language or framework, leverage that expertise. It'll save you valuable time and reduce the risk of running into unexpected issues.</li>
<li><strong>Scalability and Performance Requirements:</strong> Do you anticipate rapid growth? If so, choose a tech stack that can scale with your user base and traffic. Consider cloud-based solutions and technologies that are known for their performance and reliability.</li>
</ul>
<h2 id="heading-general-recommendations">General Recommendations</h2>
<p>While there's no magic formula, here are some general recommendations for SaaS tech stacks (for web apps) that have proven successful:</p>
<h3 id="heading-front-end">Front-End</h3>
<ul>
<li><strong>React/NextJS:</strong> A popular JavaScript library for building user interfaces. It's known for its flexibility, component-based architecture, and large community.</li>
<li><strong>Vue.js:</strong> Another popular JavaScript framework that's easy to learn and integrate into existing projects.</li>
<li><strong>Angular:</strong> A full-featured framework developed by Google, offering a structured approach to building complex applications.</li>
</ul>
<h3 id="heading-back-end">Back-End</h3>
<ul>
<li><strong>Node.js:</strong> A JavaScript runtime environment that allows you to use JavaScript for server-side development. It's known for its speed, scalability, and large ecosystem of libraries and frameworks.</li>
<li><strong>Python (with Django or FastAPI):</strong> A versatile language that's great for rapid development and data-intensive applications. Django and Flask are popular frameworks that provide structure and simplify common tasks.</li>
<li><strong>Ruby (with Rails):</strong> Known for its convention-over-configuration approach and developer-friendly tools, Rails can help you build web applications quickly and efficiently.</li>
</ul>
<h3 id="heading-database">Database</h3>
<ul>
<li><strong>PostgreSQL:</strong> A powerful and reliable open-source relational database that offers strong support for complex queries, data integrity, and scalability.</li>
<li><strong>MongoDB/DynamoDB:</strong> A NoSQL database that's flexible and scalable, making it a good choice for applications with evolving data models or unstructured data.</li>
</ul>
<h3 id="heading-additional-considerations">Additional Considerations</h3>
<ul>
<li><strong>Authentication:</strong> Authentication is one of those systems you don’t want to build, so use third party services like <a target="_blank" href="https://auth0.com/">Auth0</a> to get you started quickly and that would scale as you grow.</li>
<li><strong>Caching:</strong> Consider using a caching layer like <a target="_blank" href="https://redis.io/">Redis</a> to improve performance and reduce database load.</li>
<li><strong>Queueing:</strong> For background tasks and asynchronous processing, message queues like <a target="_blank" href="https://www.rabbitmq.com/">RabbitMQ</a>, <a target="_blank" href="https://kafka.apache.org/">Kafka</a>, or <a target="_blank" href="https://aws.amazon.com/sqs/">Amazon SQS</a> can be valuable.</li>
<li><strong>Monitoring and Logging:</strong> Implement tools like <a target="_blank" href="https://www.datadoghq.com/">Datadog</a>, <a target="_blank" href="https://sentry.io/welcome/">Sentry</a> to monitor your application's performance and track errors.</li>
</ul>
<h3 id="heading-why-this-stack">Why this Stack?</h3>
<ul>
<li><strong>Speed to Market:</strong> This stack combines familiar technologies (JavaScript, Python) with modern frameworks (React, Django/Flask, Express/NestJS) that facilitate rapid development.</li>
<li><strong>Scalability:</strong> AWS, Azure, and GCP offer auto-scaling and other features that allow your application to grow with your user base. PostgreSQL and MongoDB are known for their scalability.</li>
<li><strong>Flexibility:</strong> This stack supports both relational and NoSQL databases, giving you flexibility to choose the right data model for your application. The three major cloud providers offer a variety of services to meet your evolving needs.</li>
<li><strong>Community and Support:</strong> All of these technologies have large, active communities and extensive documentation, making it easier to find help and resources when you need them.</li>
</ul>
<h2 id="heading-conclusion">Conclusion</h2>
<p>Choosing the right tech stack for your SaaS product is a critical decision, but it's important to remember that technology is just one ingredient in the recipe for success. A well-validated idea, a strong team, and a relentless focus on delivering value to customers are all equally important.</p>
<p>Throughout my journey as a developer, I've learned a few key lessons:</p>
<ul>
<li><strong>Prioritize Speed to Market:</strong> Don't let the pursuit of technological perfection delay your launch. Get your product in front of users as quickly as possible to gather feedback and iterate.</li>
<li><strong>Embrace Familiarity:</strong> Leverage the technologies you know and love to minimize the learning curve and maximize productivity.</li>
<li><strong>Start Simple, Then Scale:</strong> Begin with a minimum viable product (MVP) and the simplest tech stack that meets your needs. You can always evolve and optimize as you grow.</li>
<li><strong>Don't Be Afraid to Pivot:</strong> Be open to changing your tech stack if it no longer serves your needs. The right tools at one stage of your product's lifecycle may not be the right tools later on.</li>
<li><strong>Focus on the User:</strong> Ultimately, your tech stack is just a means to an end. The most important thing is to build a product that solves a real problem for your users and delivers exceptional value.</li>
</ul>
<p>By prioritizing speed to market, leveraging your team's strengths, and remaining adaptable, you'll be well on your way to building a successful SaaS product. Remember, the best tech stack is the one that empowers you to create something truly meaningful for your customers.  </p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to Start a Career in Cloud Computing ]]>
                </title>
                <description>
                    <![CDATA[ What comes to mind when you hear the term "the Cloud"? Do you envision the vast expanse of the sky, with its billowy clouds and soaring birds? In the realm of technology, the term "Cloud" has no relation to the atmospheric phenomena or avian inhabita... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-start-a-cloud-computing-career/</link>
                <guid isPermaLink="false">66bb5952b6e566d0c2aea5fa</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Cloud Computing ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Akande Olalekan Toheeb ]]>
                </dc:creator>
                <pubDate>Mon, 25 Mar 2024 18:03:41 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2024/03/Freecodecamp.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>What comes to mind when you hear the term "the Cloud"? Do you envision the vast expanse of the sky, with its billowy clouds and soaring birds?</p>
<p>In the realm of technology, the term "Cloud" has no relation to the atmospheric phenomena or avian inhabitants of the world. Instead, it refers to a form of computing known as Cloud Computing.</p>
<p>Cloud computing has become an in-demand career path within the rapidly evolving tech space. With businesses increasingly shifting their operations to the cloud, the demand for proficient cloud professionals is rising.</p>
<p>In this guide, I'll give you the knowledge necessary to embark on a successful journey into the cloud. From understanding the foundational principles of cloud computing to exploring diverse career paths within the field, this guide will equip you with the tools you'll need to thrive in the dynamic realm of cloud technology.</p>
<h2 id="heading-what-is-cloud-computing">What Is Cloud Computing?</h2>
<p>The IT space is broad, with four major areas: computing, database, storage, and network. These areas have resources that all connect to transmit information using various tools.</p>
<p>Typically, these resources are purchased and placed in a data centre, where they connect to accomplish various computing tasks. At its core, the cloud revolutionises how businesses access and manage their computing resources.</p>
<p>But what is cloud computing exactly?</p>
<p><img src="https://i.ibb.co/1sT4NWC/pexels-photo-325185.webp" alt="Image representation of Cloud Computing" width="600" height="400" loading="lazy"></p>
<blockquote>
<p>Cloud Computing is the on-demand delivery of IT resources over the Internet with pay-as-you-go pricing. [ <a target="_blank" href="https://aws.amazon.com/what-is-cloud-computing/">Source: AWS</a> ]</p>
</blockquote>
<p>Let's understand the key concepts in this definition:</p>
<ul>
<li><p>On-demand: You get resources exactly when you need them.</p>
</li>
<li><p>Over the Internet: You don't need to buy resources or have physical data centers. Just make a request online.</p>
</li>
<li><p>Pay-as-you-go: You only pay for what you use.</p>
</li>
</ul>
<p>Cloud computing offers many benefits to organisations and businesses. These include agility, elasticity, cost savings, scalability, and more. With cloud computing, your team has more power over your data security and disaster recovery efforts.</p>
<p>Cloud computing represents a paradigm shift in how technology is consumed and delivered. Its transformative impact extends across industries, driving efficiency, innovation, and agility in the digital era.</p>
<p><a target="_blank" href="https://www.freecodecamp.org/news/what-is-cloud-computing/">Understanding cloud computing</a> is essential for developers seeking to navigate the evolving landscape of technology and stay up to date with the latest trends.</p>
<h3 id="heading-why-is-cloud-computing-a-good-career-option">Why is Cloud Computing a Good Career Option?</h3>
<p>The cloud offers many benefits to businesses worldwide. It offers flexibility, scalability, and reliability, allowing a company to swiftly scale resources on-demand and adapt to dynamic market conditions.</p>
<p>Top companies such as Netflix, Dropbox, and Rackspace have moved into the cloud because of its great benefits, and many others are rapidly following suit. Because of this, the cloud realm is undergoing a profound transformation.</p>
<p>Moreover, the COVID-19 pandemic has accelerated the shift to remote work and digital transformation, making cloud skills indispensable for businesses across industries.</p>
<p>This rapid adoption has created a surge in demand for cloud experts who can efficiently design, implement, and manage cloud-based systems. Companies are actively hiring cloud experts in different domains to meet their needs.</p>
<p>And so, delving into the cloud is not just advantageous – it's a strategic imperative. Starting a career in cloud computing presents immense opportunities for growth, advancement, and job security. With the right skills and knowledge, you can embark on a rewarding journey in a field that continues to shape the global future of technology and business.</p>
<h2 id="heading-careers-in-cloud-computing">Careers in Cloud Computing</h2>
<p><img src="https://i.ibb.co/DDxDyx7/photo-1454165804606-c3d57bc86b40.jpg" alt="Image" width="600" height="400" loading="lazy"></p>
<p>If you're ready to start a career in the cloud, here are a few options you can explore:</p>
<h3 id="heading-cloud-architect">Cloud Architect</h3>
<p>Cloud architects design and oversee the implementation of cloud-based solutions, ensuring they meet the organisation's requirements.</p>
<ul>
<li><p><strong>Prerequisite Skills</strong>: Strong understanding of cloud platforms (like AWS, Azure, or Google Cloud), architecture design principles, and experience with networking and security.</p>
</li>
<li><p><strong>Average Time to Acquire Skills</strong>: 3-5 years of experience in IT or related fields, along with specialised training or certification.</p>
</li>
<li><p><strong>Average Salary</strong>: $120,000 - $160,000 per year.</p>
</li>
</ul>
<h3 id="heading-cloud-developer">Cloud Developer</h3>
<p>Cloud developers specialise in creating and deploying applications optimised for cloud environments. They leverage cloud services and platforms to build scalable, resilient, cost-effective solutions.</p>
<ul>
<li><p><strong>Prerequisite Skills</strong>: Proficiency in programming languages (like Python, Java, or JavaScript), familiarity with cloud platforms and services, and experience with software development methodologies.</p>
</li>
<li><p><strong>Average Time to Acquire Skills</strong>: 1-3 years of experience in software development, supplemented by training or certification in cloud technologies.</p>
</li>
<li><p><strong>Average Salary</strong>: $100,000 - $140,000 per year.</p>
</li>
</ul>
<h3 id="heading-cloud-security-engineer">Cloud Security Engineer</h3>
<p>Cloud security engineers focus on safeguarding cloud-based infrastructure and applications from cyber threats and vulnerabilities.</p>
<ul>
<li><p><strong>Prerequisite Skills</strong>: Strong knowledge of cybersecurity principles, familiarity with cloud security best practices, and expertise in security tools and technologies.</p>
</li>
<li><p><strong>Average Time to Acquire Skills</strong>: 2-4 years of experience in cybersecurity or related roles, augmented by specialised training or certification in cloud security.</p>
</li>
<li><p><strong>Average Salary</strong>: $110,000 - $150,000 per year.</p>
</li>
</ul>
<h3 id="heading-devops-engineer">DevOps Engineer</h3>
<p>DevOps engineers bridge the gap between development and operations teams. They help streamline the deployment and management of cloud-based applications through automation, collaboration, and continuous integration/continuous deployment (CI/CD) practices.</p>
<ul>
<li><p><strong>Prerequisite Skills</strong>: Proficiency in scripting and automation tools (like PowerShell and Terraform), experience with containerisation and orchestration platforms (like Docker and Kubernetes), and DevOps methodologies.</p>
</li>
<li><p><strong>Average Time to Acquire Skills</strong>: 2-4 years of experience in software development or system administration, complemented by training or certification in DevOps practices and cloud technologies.</p>
</li>
<li><p><strong>Average Salary</strong>: $120,000 - $160,000 per year.</p>
</li>
</ul>
<h3 id="heading-cloud-data-engineer">Cloud Data Engineer</h3>
<p>Cloud data engineers specialise in designing, building, and maintaining data pipelines and analytics solutions in cloud environments. They leverage cloud-based technologies to ingest, process, and analyse large volumes of data.</p>
<ul>
<li><p><strong>Prerequisite Skills</strong>: Proficiency in data modelling and ETL (Extract, Transform, Load) processes, experience with big data technologies (like Hadoop and Spark), and familiarity with cloud data platforms (like AWS Redshift or Google BigQuery).</p>
</li>
<li><p><strong>Average Time to Acquire Skills</strong>: 2-4 years of experience in data engineering or related fields, supplemented by training or certification in cloud data technologies.</p>
</li>
<li><p><strong>Average Salary</strong>: $110,000 - $150,000 per year.</p>
</li>
</ul>
<p>These career paths represent just a few of the many opportunities available in cloud computing. Each role offers unique challenges and rewards, making cloud computing a diverse and promising field for aspiring IT professionals.<br>You can explore the various cloud providers' certification lists to grasp other career paths.</p>
<h2 id="heading-how-to-start-your-career-in-the-cloud">How to Start Your Career in the Cloud</h2>
<p>Starting a career in the cloud may seem a bit daunting at first. But with the right strategies, you can pave a successful path in this thriving industry.</p>
<p>Here are some helpful strategies to get you started:</p>
<h3 id="heading-learn-the-basics">Learn the basics</h3>
<p>The best way to start something new is to really understand the concept. Learning the basics and concepts of cloud computing is the first step to starting a career in the cloud.</p>
<p>You can start by taking a <a target="_blank" href="https://www.youtube.com/watch?v=jWdEM6XLKqI">course that generally explains the concept of cloud computing</a>. To understand the concept more deeply, you can also read the many <a target="_blank" href="https://www.freecodecamp.org/news/tag/cloud-computing/">articles the freeCodeCamp publication has on cloud computing</a>.</p>
<p>And you can check out this <a target="_blank" href="https://www.freecodecamp.org/news/free-107-hour-aws-cloud-project-bootcamp/">free 107-hour cloud bootcamp course</a> on the freeCodeCamp YouTube channel. It was created by Andrew Brown who has passed every cloud computing certification under the sun and <a target="_blank" href="https://www.exampro.co/">helps train other devs how to do the same</a>.</p>
<p>When it comes to learning the basics of cloud computing, I recommend focusing on the following skills and tools:</p>
<ol>
<li><p><strong>Cloud Service Providers (CSPs)</strong>: Familiarize yourself with leading CSPs such as Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). Each CSP offers a range of services and tools for cloud computing, and understanding their platforms is essential for practical application.</p>
</li>
<li><p><strong>Virtualization Technologies</strong>: Learn about virtual machines (VMs), containers (like Docker), and orchestration tools like Kubernetes. These technologies are fundamental to cloud infrastructure and deployment, enabling efficient resource utilisation and scalability. Here's a free <a target="_blank" href="https://www.freecodecamp.org/news/learn-docker-and-kubernetes-hands-on-course/">course on Docker and Kubernetes</a> to get you started.</p>
</li>
<li><p><strong>Networking Concepts</strong>: Gain knowledge of networking fundamentals such as IP addressing, routing, VPNs, and load balancing. Understanding how networks operate in the cloud environment is crucial for designing secure, high-performance cloud architectures. Here's a <a target="_blank" href="https://www.freecodecamp.org/news/computer-networking-how-applications-talk-over-the-internet/">beginner-friendly networking tutorial</a> for you.</p>
</li>
<li><p><strong>Storage Solutions</strong>: Explore cloud storage options like object storage (for example, AWS S3, Azure Blob Storage), file storage (for example, AWS EFS, Azure Files), and database services (for example, AWS RDS, Azure SQL Database). These services play a vital role in managing data effectively in the cloud. Here's a helpful guide that <a target="_blank" href="https://www.freecodecamp.org/news/cloud-storage-options/">explains the different types of storage options</a>.</p>
</li>
<li><p><strong>Security Practices</strong>: Learn about <a target="_blank" href="https://www.freecodecamp.org/news/how-to-secure-your-workloads-on-aws/">cloud security</a> <a target="_blank" href="https://www.freecodecamp.org/news/terraform-security-best-practices/">best practices</a>, <a target="_blank" href="https://www.freecodecamp.org/news/aws-iam-explained/">identity and access management (IAM)</a>, <a target="_blank" href="https://www.freecodecamp.org/news/encryption-explained-in-plain-english/">encryption techniques</a>, and compliance standards (like GDPR and HIPAA). Security is paramount in the cloud, and knowledge of security measures is essential for protecting cloud environments and data.</p>
</li>
<li><p><strong>Monitoring and Management Tools</strong>: Familiarize yourself with cloud monitoring and management tools such as AWS CloudWatch, Azure Monitor, and GCP Stackdriver. These tools help monitor performance, manage resources, and optimise cloud infrastructure.</p>
</li>
</ol>
<h3 id="heading-choose-a-specialization">Choose a Specialization</h3>
<p>Now that you understand the concept, the next step is to specialise. Identify a niche or specialisation within cloud computing that aligns with your interests and career goals.</p>
<p>Specialising will set you apart from other candidates, whether it's cloud security, DevOps, data analytics, or infrastructure management.</p>
<p>Here are some insights and tips to help you choose a specialisation:</p>
<h4 id="heading-assess-your-interests-and-strengths">Assess Your Interests and Strengths</h4>
<p>Consider your interests, strengths, and previous experience in IT. If you enjoy working with data and analytics, consider specialising in cloud data engineering or data analytics. If you excel in problem-solving and system design, cloud architecture or solutions architecture could be a suitable specialisation.</p>
<h4 id="heading-evaluate-your-skills">Evaluate Your Skills</h4>
<p>Take stock of your technical skills and knowledge. If you have a strong background in programming and development, cloud development or DevOps could be a good fit. If you are proficient in networking and security, consider specialising in cloud security or networking on the cloud.</p>
<h4 id="heading-research-market-demand">Research Market Demand</h4>
<p>Explore job trends and market demand for different cloud specialisations. Identify areas with high demand and growth potential.</p>
<p>For example, cloud security professionals are in high demand due to increasing cybersecurity threats, while cloud architects are sought after for designing scalable and resilient cloud solutions.</p>
<h4 id="heading-seek-guidance-and-mentorship">Seek Guidance and Mentorship</h4>
<p>Reach out to people working in different cloud specialisations for insights and advice. Mentorship programs and networking communities can provide valuable guidance in choosing the right specialisation and advancing your cloud career.</p>
<h3 id="heading-choose-the-proper-certifications">Choose the proper certifications</h3>
<p>Obtain industry-recognized certifications that align with your chosen path. Certifications from cloud providers like the AWS Certified Solutions Architect, Microsoft Certified: AzureAdministrator or Google Cloud Professional Cloud Architect validate your skills and enhance your credibility in the job market.</p>
<p>Again, Andrew Brown has created many courses to help you study for and pass these exams. You can <a target="_blank" href="https://www.freecodecamp.org/news/author/andrew/">find his course articles here</a>.</p>
<h3 id="heading-build-your-portfolio">Build your Portfolio</h3>
<p>Build your portfolio by solving real-life problems with your cloud skills. Your cloud solutions to real-life problems are proof that you are skilled.</p>
<p>Cloud providers usually have hands-on projects to work on as you take their course. These courses are sometimes fun in the form of a game, for example <a target="_blank" href="https://aws.amazon.com/training/digital/aws-cloud-quest/">the AWS Cloud quest</a> and sometimes technical, for example <a target="_blank" href="https://cloud.google.com/learn/training/">Google cloud courses</a>. Taking courses that have hands-on projects helps in building your portfolio.</p>
<p>You can also attend cloud workshops. Workshops help build your portfolio because you can work on projects and get some guidance along the way. <a target="_blank" href="https://microsoftcloudworkshop.com/">Microsoft</a>, <a target="_blank" href="https://cloud.google.com/developers/workshops">Google Cloud</a>, and <a target="_blank" href="https://workshops.aws/">AWS</a> all offer cloud workshops and training.</p>
<h3 id="heading-networking">Networking</h3>
<p>Build a professional network by attending industry events, joining online forums and communities, and connecting with professionals in the field. Networking can lead to valuable mentorships, job opportunities, and insights into the industry.</p>
<h3 id="heading-stay-updated">Stay Updated</h3>
<p>Stay abreast of the latest cloud computing trends, technologies, and developments. Work on upskilling yourself through continuous learning, attending workshops, and pursuing advanced certifications as you progress in your career.</p>
<h3 id="heading-apply-for-jobs">Apply for Jobs</h3>
<p>Now that you have fortified yourself with valuable skills, you can start applying for jobs.</p>
<p>Following the above strategies, you can acquire relevant skills, gain practical experience, and navigate the job market, setting yourself on a path to a rewarding and successful career in cloud computing.</p>
<h2 id="heading-the-time-is-now">The Time Is Now</h2>
<p><img src="https://i.ibb.co/Jxj64Ns/IMG-4902.jpg" alt="Encouragement" width="600" height="400" loading="lazy"></p>
<p>As you reflect on the insights shared in this guide, think about the immense potential and opportunities awaiting in the realm of cloud computing. The demand for skilled cloud professionals continues to surge, making it an opportune moment to embark on this transformative career path.</p>
<p>You can start your journey into the cloud today. By acquiring relevant skills, gaining practical experience, and staying updated with industry trends, you can position yourself for success in this dynamic and rapidly evolving field.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to Improve Your Communication Skills as a Developer ]]>
                </title>
                <description>
                    <![CDATA[ You built an application that solves a problem most business owners face. You registered yourself at a local event to speak about your product, but no one cares. You try selling it on social media groups, but don't receive more than "Wow, that's an i... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-improve-communication-skills/</link>
                <guid isPermaLink="false">66bf4ac482aa0e323269b452</guid>
                
                    <category>
                        <![CDATA[ Career ]]>
                    </category>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Career development  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ communication ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Tooba Jamal ]]>
                </dc:creator>
                <pubDate>Mon, 12 Feb 2024 13:03:19 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2024/02/cover-photo.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>You built an application that solves a problem most business owners face. You registered yourself at a local event to speak about your product, but no one cares. You try selling it on social media groups, but don't receive more than "Wow, that's an interesting idea."</p>
<p>Do these sound familiar? I've been there when I worked on most of my tasks during an apprenticeship, but another member would take all the credit. Turns out, I wasn't clearly speaking about my contributions to the project and how they helped make our project a success.</p>
<p>I was trying to make my contributions count, not to sell any product or impress an employer.</p>
<p>Whether you want to land a new job or make your contributions count, effective communication goes a long way.</p>
<h2 id="heading-why-good-communication-is-important-for-developers">Why Good Communication is Important for Developers</h2>
<p>You might have seen developers who have the same level of technical skills as you being are more successful. And if you pay attention to their daily activities, you'll realize that they've mastered the art of clear communication.</p>
<p>One of the most common reasons behind unclear communication is the assumption that everyone else already knows what you know.</p>
<p>Developers often have to deliver their technical knowledge to their clients, colleagues, or bosses. And if you know the gist about speaking clearly, you'll unlock a lot of opportunities with the same level of technical skills.</p>
<h3 id="heading-interviews">Interviews</h3>
<p>My friend, just out of college, had an interview at a startup. The interview was extensive but he managed to make it. And when I asked him for the tips, he said, "Explain technical reasoning to them as if they are 10". This cannot happen without good communication skills.  </p>
<p>Today, companies also conduct behavioral interviews to gauge the non-technical skills of candidates and when you're good at speaking, you can easily nail them. </p>
<p>I have a detailed guide on <a target="_blank" href="https://www.dreamsinscript.com/cracking-the-behavioral-interview/">how to crack behavioral interviews in 3 easy steps</a> on my blog. The guide has the exact steps I took to crack every behavioral interview last year, regardless of the company culture.</p>
<h3 id="heading-networking">Networking</h3>
<p>Whether you have a large following on LinkedIn or people who praise you at local meetups, good communication skills go a long way.</p>
<p>Without knowing the art of communication, you can't have any of them because people are short on time and they can't stick around if you can't deliver value.</p>
<p>Also, having a network unlocks a lot of new opportunities.</p>
<h3 id="heading-client-communication">Client Communication</h3>
<p>While some clients also are not good at delivering their goals clearly, you can save yourself if you know how. </p>
<p>Whether it's connecting with clients emotionally, understanding requirements, or conveying your thoughts, effective communication does the job.</p>
<h3 id="heading-thought-processing">Thought Processing</h3>
<p>Knowing to speak effectively is knowing your thoughts at a deeper level. When your brain thinks, you can't speak clearly. It's in a rush to pack up every speaking session. The rush will keep you from processing your thoughts when it's time to impress others.   </p>
<p>Memorizing every sentence before a meeting and forgetting the script only does harm to your reputation. </p>
<p>When you develop communication skills, you can easily convey the ideas that come to your mind in the middle of having conversations. This builds credibility and offers you a competitive advantage.</p>
<h2 id="heading-how-to-improve-your-communication-skills">How to Improve Your Communication Skills</h2>
<p>Just like you build projects to master dev skills, communicating with humans is the key to improving your communication skills. </p>
<p>There is no shortcut to it. You can't communicate better by observing others, you have to do it yourself if you want growth.</p>
<p>I refined my speaking skills subconsciously, while I was looking for better opportunities. The impact it had on my way of expressing ideas was big enough that my mentors praised it during a cohort.</p>
<h3 id="heading-join-engaging-discord-groups">Join Engaging Discord Groups</h3>
<p>You might think that discord communities are time-demanding.  The thing is, you can chat for as little as ten minutes daily and still see a difference. One or two good communities work well if they've got a safe and active community.</p>
<p>Also, you can respond to messages throughout the day, just as you would with your friends.</p>
<p>Replying to others' wins, sharing your fears, and discussing daily errands or deadlines is a good ways to fine-tune your communication skills. Observe others' tone and try to be as clear as possible. You'll see a difference in your way of describing things in no time.</p>
<p>There is a voice and video call option too on Discord which can help enhance your speech.</p>
<h3 id="heading-github-contribution">GitHub Contribution</h3>
<p>Giving and receiving feedback without bias is one of the most important skills to learn. If you're still waiting to land your first developer job or find yourself taking feedback personally, GitHub contributions will teach you to not lose your cool every other day at work. </p>
<p>When you submit a pull request on GitHub, you're likely to receive feedback from the project maintainers. Think of that feedback as an opportunity to improve your tech skills. You'll soon realize how others' attention to detail helps you to think broadly and get better at your craft. Realizing this will help you accept feedback as a privilege to grow beyond limits.</p>
<h3 id="heading-find-a-mentor">Find a Mentor</h3>
<p>Good mentors will encourage you to speak more by asking more. I've had the privilege to find a mentor who'd ask a lot of questions regarding my project, daily life, pets, work, and so on. And that'd stimulate my thoughts and speech. He'd then tell me about his life and this cycle allowed me to notice things that I felt didn't matter. </p>
<p>Finding a mentor is easier than you think through social media. All it takes is a motivation to find like-minded people whose work you admire.</p>
<h3 id="heading-social-media">Social Media</h3>
<p>An active social media account speaks about your credibility. I found a mentor through Instagram who helped me find free resources and would ask me about my progress. </p>
<p>Start posting on social media today about your progress, your work or whatever you find valuable. Comment on other people's posts to engage with them and make new connections. Also, don't forget to send non-pushy, sweet messages to new connections telling them you like their work.</p>
<p>Social media will help you stay accountable and keep track of your progress.</p>
<h2 id="heading-how-to-improve-your-speaking-skills">How to Improve Your Speaking Skills</h2>
<p>If you're good at writing clearly but go blank when speaking, you're still behind in the game. Speaking more will refine your skills and you can start doing that even if you have no one to speak to.</p>
<h3 id="heading-the-collab-lab">The Collab Lab</h3>
<p><a target="_blank" href="https://the-collab-lab.codes/">The Collab Lab</a> is a cohort-based program focused on helping developers learn collaboration for free. </p>
<p>You'll work within a team of 4-5 software developers to build a project under the guidance of mentors. The mentors keep you on track and foster a safe communication environment.</p>
<h3 id="heading-topmate">Topmate</h3>
<p><a target="_blank" href="https://topmate.io/">Topmate</a> is a platform where professionals offer 1 on 1 sessions. From teachers sharing knowledge to therapists saving lives. </p>
<p>Over 10000 people use Topmate. The good thing is, some of them also offer free sessions and you just need to find them. The goal here is to improve your speaking skills.</p>
<h3 id="heading-linkedin">LinkedIn</h3>
<p>LinkedIn is a great place to ask people on a virtual coffee chat. They don't need to be experts as the goal is to develop stronger speaking skills. Schedule meetings to speak about work, side projects, hobbies or anything you like and witness your skills skyrocket.</p>
<h3 id="heading-discord-not-an-additional-point-but-an-extension-to-the-first-one">Discord (Not an additional point, but an extension to the first one 😉)</h3>
<p>Use the calling feature on Discord and speak to people you've already interacted with. Invite them to work on projects together or discuss anything you both find interesting.</p>
<h3 id="heading-last-words">Last Words</h3>
<p>According to K. Anders Ericsson in his book, Peak: Secrets from the New Science of Expertise, "The right sort of practice carried over a sufficient period of time leads to improvement. Nothing else."</p>
<p>Ericsson was a psychologist and the expert of experts. He presented the performance theory and said expertise is achieved outside your comfort zone.</p>
<p>So if you feel you aren't a good communicator or you don't want to speak in front of others, then you should know that only speaking can take you away from those doubts. </p>
<p>The methods I listed above helped me speak better English. However, I used to escape every English conversation at school.</p>
<p>Interested in becoming internet friends? You can hit me up on <a target="_blank" href="https://www.linkedin.com/in/tooba-jamal">LinkedIn</a> or <a target="_blank" href="https://www.instagram.com/dreamsinscript/?igshid=eDdnYmN3OWgxMDd1">Instagram</a>.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Career Mistakes to Avoid as a Developer ]]>
                </title>
                <description>
                    <![CDATA[ What does the word career mean to you? To me, it is a roller coaster journey during which we find opportunities, progress, and growth in life. The journey involves learning objectives, work, and other personal and professional aspects. A promising ca... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/career-mistakes-to-avoid-as-a-dev/</link>
                <guid isPermaLink="false">66bdffcdeb957b90783c1c69</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Job Hunting ]]>
                    </category>
                
                    <category>
                        <![CDATA[ self-improvement  ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Tapas Adhikary ]]>
                </dc:creator>
                <pubDate>Wed, 22 Nov 2023 00:04:22 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2023/11/Career-Mistakes-2.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>What does the word <code>career</code> mean to you? To me, it is a roller coaster journey during which we find opportunities, progress, and growth in life. The journey involves learning objectives, work, and other personal and professional aspects.</p>
<p>A promising career is one where you enjoy most (if not all) of your daily work. You see your personal, professional, and financial growth and gradually define what success means to you. </p>
<p>A lousy career is just the opposite. It may pay your bills, but you need more work satisfaction, and measuring your progress and growth becomes hard.</p>
<p>Several factors define a career: promising versus lousy, good versus bad, and successful versus failed. A few of them we can not control – but, we can avoid some career mistakes to build a better career path.</p>
<p>I have spent more than 18 years in Software Engineering and have seen a lot of ups and downs, including in my own career and those of my colleagues. In this article, I will discuss ten career mistakes you should avoid. </p>
<p>Usually, I <a target="_blank" href="https://www.freecodecamp.org/news/author/tapas/">share knowledge</a> on technical topics like JavaScript, web development, React, Node, Next.js, and so on. But this time, let's connect on essential tips for our Career Development.</p>
<p>If you like to learn from video content as well, this article is also available as a video tutorial here: 🙂</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/uiVmFwbVfzU" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<h2 id="heading-a-few-things-before-we-start">A Few Things Before We Start</h2>
<p>You may or may not agree with all the points. That's fine with me, because what I'm planning to share here is based on my own experiences. </p>
<p>You may strongly agree or disagree with my conclusions, but if there are any additional points that you think I still need to include, please let me know. You can contact me on the social handles I mention at the end of this article.</p>
<p>Also, this article is not only meant for working professionals. All these mistakes we will discuss are relevant for everyone, including students, people seeking jobs, or anyone getting ready for tomorrow in the software industry or any industry.</p>
<p>All set? Let's get started.</p>
<h2 id="heading-1-you-dont-set-realistic-goals">1. You Don't Set Realistic Goals</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Goal.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>One of the biggest mistakes most of us make in our careers is not having a goal. What exactly is a goal? It is something like a target. </p>
<p>Let's take an example. Let's say you're going shopping to buy something. You usually have a list of items that you want to get. You don't randomly pick things and come home and feel like, "Oh, it was a complete waste of time and money". So, if that list is your shopping goal, why not have something like this for your career?</p>
<p>Usually, we have a lot of short-term goals, for example,</p>
<ul>
<li>I have to fix this bug today.</li>
<li>I have to build this project this week.</li>
<li>I have to get a promotion this year.</li>
</ul>
<p>These are great goals to have. But we need to have long-term goals as well. Like, what do you want to be in the long-term in your career. How do you plan every steps to achieve that goal?</p>
<p>Say you are in mechanical engineering, but your heart is in software engineering (mechanical engineering is excellent – I'm just taking this as an example). In that case, you should have a goal for the next few years to translate yourself into a software developer and try to seek more roles more opportunities in the software industry.</p>
<p>I can tell you my story, as I think it'll help give you some perspective. I set myself a long term career goal to transition from my regular multi-national corporation job and start my career full time as an independent teacher and content creator. It took me four years to realize it, but without that goal it would have been impossible for me to chase my passion.</p>
<p>You may ask, will I be able to fulfill all the goals in my life? Well, maybe not. Still, it's important to have some and prioritize the most important ones. That way, even if you can't achieve some, you may identify a few more new goals along the way. </p>
<p>You may have a different way of going about it. But, if you don't have a starting point, you do not have anything to work toward and chase. Your career may become stagnant.</p>
<p>If you don't have any career goals for yourself right now, take some time to come up with a couple realistic goals. Here's some advice on <a target="_blank" href="https://www.freecodecamp.org/news/how-to-set-smart-goals-you-can-achieve/">how to set SMART goals you can actually achieve</a>.</p>
<h2 id="heading-2-you-fail-to-recognize-your-potential">2. You Fail to Recognize Your Potential</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Potential.png" alt="Image" width="600" height="400" loading="lazy"></p>
<blockquote>
<p><strong>Human potential</strong> is the capacity for humans to <strong>improve</strong> themselves through <strong>studying</strong>, <strong>training</strong>, and <strong>practice</strong>, to reach the limit of their ability to develop <strong>aptitudes</strong> and <strong>skills</strong>. – Definition of Human Potential from Wikipedia.</p>
</blockquote>
<p>For us, the software developers, is about improving ourselves through practice, training, and study to reach the heights of our ability. But many of us do not know our potential at the start our careers. We figure it out gradually, and when we become aware of it, this helps us improve our careers. </p>
<p>When you know your potential, someone else will not dictate how to shape your career. Instead, you will be able to identify what would be good for you based on your strengths and where you need to bridge the gaps. </p>
<p>But you may ask, "How do I know my potential?". That's where having a goal and working towards it helps. Say you have a goal of mastering machine learning and data science to have a career as a data scientist. As you work towards this goal, you will find the areas where you excel, and other areas where you need to work especially hard. You figure out your potential as you work towards this goal.</p>
<p>Also, try not to settle for unimportant things. Constantly challenge yourself to produce better and more significant outcomes. When you do so, you discover your true potential in a much better way.</p>
<h2 id="heading-3-you-dont-take-the-time-to-network">3. You Don't Take the Time to Network</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Networking.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Hey, we're gonna talk about something other than computer networking here. We will focus on human-to-human networking. We are going to talk about socializing. But why?</p>
<p>Networking or socializing with like-minded people, talking to them, and getting inspired by their work are as important as learning to code in programming. You might be a great programmer and fantastic coder. But suppose you do it in a silo. In that case, no one knows you or what you're capable of, so you will most likely lose out on more significant opportunities in your career.</p>
<p>When you socialize and network with others in the tech space, you may find a meaningful community to join. You'll be able to discuss important topics with like-minded people who have interests similar to yours – and this can help you multiply your growth by many times.</p>
<p>This is one mistake I made in my career for several years, as I was unaware of its vast potential. Be active on platforms like LinkedIn, follow people you'd like to connect with on tech Twitter (now X), and make authentic connections with them. Spending mindful time on these platforms, and at in-person events as you're able, can really help boost your career.</p>
<p>Check out the <code>You Miss Out on Learning Opportunities</code> section below for some real-life tips on how to reach out and connect with people. </p>
<h2 id="heading-4-you-waste-your-precious-time">4. You Waste Your Precious Time</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Wasting-Time.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>"Wasting time" means not effectively utilizing your time. Would you agree that time is precious? Using and managing your time properly will help your career and life in general.</p>
<p>To clarify, watching a movie, going out with your friends and family, participating in festive activities, and so are not wasting time. You need these to balance out the time you spend working. </p>
<p>Rather, I'm more concerned about the tasks you may have to perform that take away from your "focus time" at work.</p>
<p>Let me walk you through a few situations:</p>
<p>You are working on a task, and here comes some notifications on your phone. You pause whatever you are doing and jump on your phone to see what's happening on that side of the world. The notification may take you 10-15 seconds to read, but you then spend 10 minutes browsing the phone. </p>
<p>This is a habit many of us have built in recent times. And then when you get back to your work, your brain has to recalculate and bring you back to the topic at hand – where you were, and what you were doing – and get you started with the task gain. This context switching is costly, and the same amount of focus may not be possible.</p>
<p>The best way of tackle a situation like this is,</p>
<ul>
<li>Switch off the phone's internet while you're working if you do not need it. You can switch it on when you take breaks, maybe at lunch time.</li>
<li>You can also set your phone in "Do Not Disturb" mode while your work needs your utmost attention. Just make sure you add some of your family and friend's contacts as emergency contacts so that only a limited set of people can reach out to you during those times in case of any emergencies.</li>
</ul>
<p>Let's talk about another situation. Suppose you need to prepare and send a design doc to a senior dev for review. But instead, you spend time on something low priority or some little luxury that delayed preparing the doc. You keep postponing until it's become an urgent thing that you'll have to do within a limited time. </p>
<p>This act of delaying something knowingly is called <code>procrastination</code>, an ultimate way to kill time. There are some well-known and proven methods to tackle procrastination.</p>
<ul>
<li>The first step is to realize and admit to yourself that you procrastinate.</li>
<li>Then list out your distractors. This list may vary from person to person. Remove these distractors. It could be your phone, TV, novels, anything.</li>
<li>Break down your deliverables into smaller tasks. Achieve them one by one and give yourself a pat on your back once you've finished each small task.</li>
<li>Take small breaks and come back to the point where you left off on your task to continue with a fresh brain.</li>
</ul>
<p>Instead of finding yourself in these types of situations, use your time wisely. If you have to get something done, get it done. When you're procrastinating, something that depends on one task may also get delayed, creating a cycle of time waste, frustrations, and complicated situations.</p>
<h2 id="heading-5-you-neglect-upskilling">5. You Neglect Upskilling</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Upskill.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p><code>Upskilling</code> means getting better at your current skill or acquiring relevant new skills. It is essential to upskill at any and all stages of your career. </p>
<p>One of the common mistakes we make is that we stop upskilling after a few years in our professional life. We get used to the projects, domains, technologies, and environments that create a comfort zone around us. Upskilling is always about coming out of that comfort zone.</p>
<p>Here are a few common excuses we give to ourselves when it comes to upskilling:</p>
<ul>
<li>I already have a lot of work at the office or assignments in university.</li>
<li>I need to have a personal life.</li>
<li>I am happy with whatever I know now, and my work only demands so much.</li>
<li>There is so much to learn and it is never ending (sigh!).</li>
</ul>
<p>But you really don't need that much time in a week to up-skill. You just need to have a plan and to stay consistent in executing it. Set just 1 hour aside in your day. Fork it out from any non-urgent activities and plan your learning schedule in that one hour.</p>
<p>In this one hour, here are some things you can do:</p>
<ul>
<li>Assess the gaps, weaknesses, and strengths in your technical and non technical abilities.</li>
<li>List them out in a place where you can easily get back to them and make modifications.</li>
<li>Prioritize them based on your current needs and near future goals.</li>
<li>Time-box each of the items so that you can get something tangible within a specified duration. For example, you want to do a certification on cloud computing within a month, or the Responsive Web Design course from freeCodeCamp over the next few weeks, and so on.</li>
<li>Start working on these defined tasks. You may find many resources on internet. Glance over them to create an index of resources that you can understand easily and relate to well. </li>
<li>Read and watch tutorials, but also practice hard.</li>
<li>Finally, recognize your progress.</li>
</ul>
<p>You may ask, is that one hour really enough? And I will tell you – it works like magic if you keep it up. Upskilling is not a race or sprint. It needs time, consistency, and perseverance to get from the one end to other.</p>
<p>Have you heard about the power of tiny gains?</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/image-21.png" alt="Image" width="600" height="400" loading="lazy">
<em>Credit: James Clear</em></p>
<p>It is a strategy of being just 1% better every day. If you continue to do that for a year, you get almost 38% better at the end of the year. Being 1% worse does the opposite. The strategy was represented in mathematical graphs by James Clear in explanation of <a target="_blank" href="https://jamesclear.com/continuous-improvement">Continuous improvements and how it works</a>.</p>
<p>Upskilling can also help you out a lot if you're preparing for the job search. The way the tech industry is moving, we may not be able to avoid layoffs – but we can be better prepared to get our next job faster. And that becomes much more attainable when you stay relevant and continue learning new things. </p>
<h2 id="heading-6-you-dont-ask-for-what-you-want">6. You Don't Ask for What You Want</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Don-t-ask-Don-t-Get.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Let me start by sharing an experience of mine. Back in the early 2000s when I was a fresher, I had to attend a meeting with some of the project leads and the manager. We were discussing how to modernize our product with HTML5 features. </p>
<p>I was aware of HTML5, and every time a discussion point was raised, I thought of adding to it, but I didn't. I thought of asking some valuable questions, but I didn't. I felt that in order to ask something in a meeting, I needed a lot of guts! I was wrong. </p>
<p>Oftentimes in your career journey, if you do not ask, you simply won't get what you want or deserve. If someone has some knowledge and you lack it, ask about it. If you have a questiona bout something, ask before you commit to the work. Ask about your promotion, a salary hike, career growth, and anything that is related to your career. There is no such thing as a silly question when it comes to your career growth.</p>
<h2 id="heading-7-you-only-focus-on-the-money">7. You Only Focus on the Money</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Money-honey.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Come on, money is important. But is it the only important thing, especially in the context of switching jobs or working towards your career goals? No, certainly not. </p>
<p>When you plan to switch jobs, you also need to look into other factors like work culture, the amount of time you need to spend at the office working, whether it's going to be more stressful compared to the compensation you'll be getting, and so on.</p>
<p>I would certainly look into the following factors along with the compensation (the money part) to make an informed decision about my job switching:</p>
<ul>
<li>What will be my technical growth and learning opportunities?</li>
<li>What will the work environment be like? Remote/Work From Office/Hybrid? How will that impact me?</li>
<li>What skills (both tech and soft) will I be able to learn in the new position?</li>
<li>What kind of employee benefits will I get compared to my current organization?</li>
<li>Will my work-life balance be impacted positively?</li>
<li>What are the company's vision, culture, and values?</li>
</ul>
<p>Then when you're considering the salary, be careful and make sure you understand the breakdown. What percentage of the CTC comes from any bonus? Is it inclusive or exclusive of CTC? How does the bonus payout happen? If the company doesn't do well in a fiscal year, will you get paid less? Are there stock options or other benefits they pay out instead of cash? All this matters.</p>
<p>The mistake people often make is that they see only the <code>money</code> figure as the most important part of a job offer. Make sure you talk to someone from the company, do your research, and learn about what else they're offering as we mentioned above. </p>
<h2 id="heading-8-you-neglect-work-life-balance">8. You Neglect Work-Life Balance</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Work-Life.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Another mistake you might make is not balancing your work and life. The last thing you want is to <code>burn out</code> at the cost of things you love the most, like your friends, family, and long-term career.</p>
<p>We must learn to prioritize things, and this includes both work and personal life. Your priority list for the day should not have only work related items. While it's important to ship a bug fix, it is also essential to accompany your kids to their soccer games or school plays, or make time to go on a date with your partner, or do something nice for yourself.</p>
<p>Do not be afraid to say "No". At the same time, don't be arrogant when you accept or decline tasks. This is important to keep a healthy work-life balance. When you already have plenty on your plate, trying to accommodate more or do more will only spill over and negatively affect your work-life balance. </p>
<p>So say no when you need to, communicate your intentions ahead of time when possible, and proactively ask for what tasks you'd like to work on when your plate has room for more.</p>
<p>For a long time in my career, I attended meetings late at night to match the timezones of my customers and other colleagues. Then, slowly, it started affecting my health and productivity. </p>
<p>When I thought about it more carefully, I discovered a couple of things. First, I realized that I didn't have to attend all the meetings, and that I could request that they take place in my clients' evenings sometimes. That way we'd both be taking turns compromising. And it worked. </p>
<p>At times, our habits drive us towards the work-life imbalance. For example, staying late at office while the same work can wait till the next morning is a classic example of a habit that may lead to health issues and frustrations in a long run. </p>
<p>We all need to find a way to sustain both work and life. So plan ahead, and stick to your schedule as much as possible. There might be exceptions where you have to give one thing priority above another – but do not allow the exception to become the norm.</p>
<h2 id="heading-9-you-miss-out-on-learning-opportunities">9. You Miss Out on Learning Opportunities</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/GOAT.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>If you have the opportunity to learn from a person who specializes in a particular field, grab it. If you use social media platforms like LinkedIn and X/Twitter wisely, it can lead you to the people who share great insights about subjects you're interested in.</p>
<p>A quick tip for you:</p>
<p>When you send someone a connection request on LinkedIn/X, take some time to introduce yourself. Things that you can mention briefly:</p>
<ul>
<li>What did you find unique about the person you want to connect to?</li>
<li>A bit about yourself, introducing some of your uniqueness, too.</li>
<li>Why do you want to connect?</li>
</ul>
<p>Build authentic connections to get the best out of it. Then once you're connected, here are a few things you can do:</p>
<ul>
<li>Show interest in their posts.</li>
<li>Engage with discussions by commenting or sharing posts.</li>
<li>Repost with your thoughts</li>
<li>Exchange ideas, or even build things together!</li>
</ul>
<p>A strong social connection may help you in getting information faster. You may learn about a new release of a library/framework/product, how an industry is moving, how certain technologies might impact your work, and so on.</p>
<p>Apart from learning a lot, you may also get to know about job openings, hirings, and references. After all, companies have also started recruiting talent from social media pages.</p>
<p>Also, being part of a forum like the <a target="_blank" href="https://forum.freecodecamp.org/">freeCodeCamp forum</a> can be helpful for networking and learning as well. It is also a place for you to share solutions to a problem, talk about what you've learned, and make yourself visible gradually.</p>
<p>When we learn from someone, we not only come to understand what they've achieved or how they did it, but we also learn about the struggles, failures, and how they made the turnaround. Learning from someone else's experience can help accelerate your career journey. Don't make the mistake of living in a silo and missing out on these opportunities.</p>
<h2 id="heading-10-you-cant-see-the-bigger-picture">10. You Can't See the Bigger Picture</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/11/Big-Picture.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>By <code>Big Picture</code>(or Bigger Picture), I mean understanding and developing a wider perspective on your career as a whole. It is about your ability to consider and assess many different aspects of a situation, rather than focusing on just the minute details.</p>
<p>As developers, we're supposed to implement features, do bug fixes, maintain code, and deliver quality software to our end-users. That's great! </p>
<p>But, we need to think beyond the individual tasks assigned to us. Our understanding of the overall project goals, the user acceptance criteria, delivery mechanisms, and perspectives of other engineers is key. And so is judging the impact of our work, as it will help us get the big picture of a project.</p>
<p>Suppose your product manager wants your team to build user interfaces that also cater to the needs of specially-abled and visually challenged users. In this case, you and your team members must see the bigger picture around <code>Accessibility</code>. </p>
<p>If your designer doesn't define the site's colors accordingly, or the developers do not implement keyboard accessibility along with ARIA roles and attributes, then they're missing the bigger picture. </p>
<p>Another example could be over-optimizing performance while your users do not care about it. Your users may be waiting to get a feature ASAP so it can help them achieve their business goals. But by addressing unnecessary optimizations, you may be delaying that release and missing crucial deadlines.</p>
<p>Missing the bigger picture may lead to a lack of synergy in your organization. It can also result in software products that need multiple iterations to meet customer needs because those needs weren't understood at the beginning. This can cause you to miss deadlines and do more work, and can greatly increase the cost to your client.</p>
<p>Along with understanding "what" tasks you need to perform, also ask "why" your tasks are important and how they will impact the rest of the project or other people's work. </p>
<p>Irrespective of what you build, how big or small it is, how glorified or dull is the outcome, you need to know the impact of it on end users and your internal customers (like product/project managers, quality assurance team, documentation team, whoever). </p>
<p>Once you look at the bigger picture and act accordingly, your margin of error reduces automatically.</p>
<h2 id="heading-some-more-advice-and-wrapping-up">Some More Advice and Wrapping Up</h2>
<p>I wanted to share all this career advice with you because I have been on the other side and learned the hard way. Before I move on to write my next article or record my next video, one more quick tip for you: make sure you work to build up your finances.</p>
<p>Financial independence brings peace and the mental stability to think wildly about things you want to pursue in your career. But getting to the point of financial stability is not an overnight thing. You need to plan, save, and invest wisely such that your money grows faster than your age.</p>
<p>I am not a finance expert, but I relied on some good ones and took their suggestions early on. If you have the opportunity and mindset to build your finances for the future, the time is now. </p>
<p>That's all for now. I hope you found this article informative and insightful. I regularly publish meaningful posts on my <a target="_blank" href="https://blog.greenroots.info/">GreenRoots Blog</a>, you may find them helpful, too.</p>
<p>Let's connect.</p>
<ul>
<li>I am an educator on my YouTube channel, <code>tapaScript</code>. Please <a target="_blank" href="https://www.youtube.com/tapasadhikary?sub_confirmation=1">SUBSCRIBE</a> to the channel if you want to learn JavaScript, ReactJS, Next.js, Node.js, Git, and all about Web Development in the fundamental way.</li>
<li><a target="_blank" href="https://twitter.com/tapasadhikary">Follow me on X (Twitter</a>) or <a target="_blank" href="https://www.linkedin.com/in/tapasadhikary/">LinkedIn</a> if you don't want to miss the daily dose of Web Development and Programming Tips.</li>
<li>Find all my public speaking talks <a target="_blank" href="https://www.tapasadhikary.com/talks">here</a>.</li>
<li>Check out and follow my Open Source work on <a target="_blank" href="https://github.com/atapas">GitHub</a>.</li>
</ul>
<p>See you soon with my next article. Until then, please take care of yourself, and stay happy.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ LinkedIn Profile Optimization – A Web Developer's Guide to Attract Opportunity ]]>
                </title>
                <description>
                    <![CDATA[ As a web developer, an optimized LinkedIn profile can bring numerous opportunities directly to you. After implementing invaluable optimization advice from industry experts who reviewed my profile, I now receive a steady flow of enticing prospects in ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/linkedin-profile-optimization/</link>
                <guid isPermaLink="false">66bc4c0b099736fc91bcbef9</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Job Hunting ]]>
                    </category>
                
                    <category>
                        <![CDATA[ LinkedIn ]]>
                    </category>
                
                    <category>
                        <![CDATA[ optimization ]]>
                    </category>
                
                    <category>
                        <![CDATA[ recruitment ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Michael Larocca ]]>
                </dc:creator>
                <pubDate>Tue, 03 Oct 2023 08:32:42 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2023/10/FFC-01-NEW.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>As a web developer, an optimized LinkedIn profile can bring numerous opportunities directly to you. After implementing invaluable optimization advice from industry experts who reviewed my profile, I now receive a steady flow of enticing prospects in my inbox.</p>
<p>In this article, I'll share the insights I've gained to help you optimize your profile so that you can achieve similar success.</p>
<p>Hello, my name is Michael. Like many others, I am a self-taught web developer on a journey to transition from my current career into the tech industry. </p>
<p>Although I haven't finished learning front-end web development, I am already earning side income by writing articles and providing code reviews. How did I accomplish this? One of the ways is through an optimized LinkedIn profile, which helps bring monetary opportunities directly to me.</p>
<p>In this article, I will share with you what I learned from having my LinkedIn profile reviewed by employees from LinkedIn and Microsoft, recruiters, and a tech celebrity during livestream events. 📺</p>
<h2 id="heading-why-should-you-optimize-your-linkedin-profile">Why should you optimize your LinkedIn profile?</h2>
<p>Having a LinkedIn profile in today's industry is arguably just as important as having a resume/CV. </p>
<p>By optimizing your LinkedIn profile, you will not only stand out from the crowd of other web developers but also help attract recruiters, hiring managers, and additional opportunities directly to you. 💸</p>
<h2 id="heading-how-you-should-treat-linkedin">How you should treat LinkedIn</h2>
<p>Unlike other platforms, LinkedIn is a professional work-related platform, and it should be treated as such. Refrain from posting personal social content, your opinions on controversial subjects, and anything else that may hinder your reputation. </p>
<p>You have a right to voice your opinions, but you should consider posting them on other social media platforms. It is not in your best interest for potential hiring managers to dismiss you from employment opportunities simply by judging you based on your posted content. 😬</p>
<h2 id="heading-linkedin-profile-sections">LinkedIn Profile Sections</h2>
<p>To optimize your LinkedIn profile, I will guide you through each of the following LinkedIn profile sections:</p>
<ul>
<li><a class="post-section-overview" href="#heading-how-to-optimize-your-linkedin-profile-picture-and-banner">How to Optimize your LinkedIn Profile Picture and Banner</a></li>
<li><a class="post-section-overview" href="#heading-open-to-work-banner">Open to Work Banner</a></li>
<li><a class="post-section-overview" href="#heading-headline-section">Headline Section</a></li>
<li><a class="post-section-overview" href="#heading-location-setting">Location Setting</a></li>
<li><a class="post-section-overview" href="#heading-featured-section">Featured Section</a></li>
<li><a class="post-section-overview" href="#heading-activity-section">Activity Section</a></li>
<li><a class="post-section-overview" href="#heading-summary-about-section">Summary (About) Section</a></li>
<li><a class="post-section-overview" href="#heading-experience-section">Experience Section</a></li>
<li><a class="post-section-overview" href="#heading-education-section">Education Section</a></li>
<li><a class="post-section-overview" href="#heading-licenses-and-certifications-section">Licenses and Certifications Section</a></li>
<li><a class="post-section-overview" href="#heading-projects-section">Projects Section</a></li>
<li><a class="post-section-overview" href="#heading-skills-and-endorsements-section">Skills and Endorsements Section</a></li>
<li><a class="post-section-overview" href="#heading-recommendations-section">Recommendations Section</a></li>
<li><a class="post-section-overview" href="#heading-honors-amp-awards-accomplishments-section">Honors &amp; Rewards (Accomplishments) Section</a></li>
<li><a class="post-section-overview" href="#heading-creator-mode">Creator Mode</a></li>
</ul>
<p><strong>Additional tips:</strong></p>
<ol>
<li><a class="post-section-overview" href="#heading-1-post-external-links-in-the-comments">Post external links in the comments</a></li>
<li><a class="post-section-overview" href="#heading-2-change-the-default-profile-url-to-your-name">Change the default profile URL to your name</a></li>
<li><a class="post-section-overview" href="#heading-3-separate-profile-for-separate-languages">Separate Profile for separate languages</a></li>
<li><a class="post-section-overview" href="#heading-4-linkedin-learning">LinkedIn Learning</a></li>
<li><a class="post-section-overview" href="#heading-5-linkedin-skill-assessments">LinkedIn Skill Assessments</a></li>
</ol>
<p>💡 <strong>Tip:</strong> Did you know many recruiters are not programmers? Keep this in mind to better optimize your LinkedIn profile.</p>
<h2 id="heading-how-to-optimize-your-linkedin-profile-picture-and-banner">How to Optimize your LinkedIn Profile Picture and Banner</h2>
<p>In this section, you'll learn how to optimize your profile picture and banner on LinkedIn to make your profile look more professional. </p>
<h3 id="heading-how-to-optimize-your-profile-picture">How to Optimize your Profile Picture</h3>
<p>Your profile picture is easy, so we'll start with that. Since the absence of a picture or an avatar in its place may be perceived as a red flag to hiring managers, use a real picture of yourself (don't be shy). 😏</p>
<p>Use a close-up picture of yourself in professional clothing, as you would in an interview, from the shoulder area up, and a professional-looking or blank background.</p>
<h3 id="heading-how-to-optimize-your-banner-image">How to Optimize your Banner Image</h3>
<p>For your banner, your goal is to convey a clear picture of your desired job role.</p>
<p>When creating a custom banner, here are things to consider:</p>
<ul>
<li>The banner image should reflect your desired job role, not contradict it.</li>
<li>Other people viewing your profile may not be programmers.</li>
<li>Everyone will not recognize tech icons without the corresponding names.</li>
<li>Add contact information as an alternative method to be reached.</li>
<li>Incorporate a hobby to spark conversation.</li>
</ul>
<h4 id="heading-banner-image">Banner Image</h4>
<p>An unintentional mistake I made was to use on my blog's logo as a banner, which included the word "self-taught" in big letters. Danny Thompson brought to my attention during a livestream review that it wasn't in my best interest to broadcast that I am a self-taught developer, as it can be seen as a red flag to hiring managers. </p>
<p>Other banner image mistakes include unrelated tech images such as nature scenery or having no banner at all. Remember, you want your banner to reflect your desired job role.</p>
<p>Another thing to remember is that other people viewing your profile may not be programmers, so including icons alone without corresponding names, such as HTML, CSS, JavaScript, and React logos, may not be recognized by everyone.</p>
<h4 id="heading-adding-contact-information">Adding contact information</h4>
<p>Another thing I learned while having my profile reviewed is that recruiters have a limited number of monthly LinkedIn InMail credits available to reach out to potential candidates. So, adding your contact information to your banner, such as your website, email, and phone number, creates an alternative means of reaching you without having to utilize their InMail credits.</p>
<h4 id="heading-conversation-starter">Conversation starter</h4>
<p>This will not be for everyone, but it is definitely worth mentioning. Recruiter Taylor Desseyn told us of a developer who incorporated his time as a sound engineer for the Backstreet Boys in his LinkedIn banner. This caught the attention of a recruiter who contacted the developer due to their music industry experience, ultimately securing them a tech job. So, if you have a personal, non-tech-related experience or hobby that could potentially spark a conversation, consider including it.</p>
<p>💡 <strong>Tip:</strong> Recruiters have a limited number of InMail credits, which they use to reach out to potential candidates. Providing your contact information in your LinkedIn banner provides an alternative method for others to get in touch with you.</p>
<h3 id="heading-open-to-work-banner">Open to Work Banner</h3>
<p>If you are feeling brave, you can display an "OPEN TO WORK" banner that proudly displays your availability to everyone. </p>
<p>However, since this is a delicate topic, and everyone's situation varies, there is an option that allows you to maintain the privacy of your open-to-work status. There will not be a displayed banner, but recruiters will know you are available to work. 🤫</p>
<p>To set the "Open to Work" banner on LinkedIn, follow these steps:</p>
<ol>
<li>Log in to your LinkedIn account and navigate to "Edit job preferences."</li>
<li>Fill in the fields, such as job titles, location types, start date, and employment types.</li>
<li>Now, for visibility, choose whether to share your open-to-work status with all LinkedIn members or only with recruiters. Selecting the first option will display the "Open to Work" banner on your profile picture, while the second option keeps it private.</li>
<li>Click "Save" to apply the changes.</li>
</ol>
<p><strong>Note:</strong> Please proceed with caution when selecting your open-to-work status, regardless of whether you choose to display the banner or not, as LinkedIn has a disclaimer stating they cannot guarantee complete privacy. Use this feature at your own risk.</p>
<h3 id="heading-headline-section">Headline Section</h3>
<p>In your headline section, briefly describe yourself by adding keywords that match the job role you seek and your skill sets. In my case, I entered "Technical Writer | Front-End Web Developer | React | JavaScript | CSS | HTML | Scrimba Code Reviewer." </p>
<p>Of course, you can get more descriptive and tell a little about yourself, but the main goal is to provide specific keywords.</p>
<p>The reason for including keywords related to your skills and desired job role in your headline ensures that you appear in relevant search results of recruiters and employers.</p>
<h3 id="heading-location-setting">Location Setting</h3>
<p>For my LinkedIn location setting, I initially set it to Brooklyn, New York, which is where I am based. When LinkedIn employee Austin Henline reviewed my profile, he explained that setting my profile to Brooklyn limits the searches I appeared to just Brooklyn.</p>
<p>By modifying my LinkedIn location from Brooklyn to the New York City Metropolitan Area, which includes Brooklyn, I substantially expanded the range of job searches in which I appear.</p>
<p>To optimize your LinkedIn location setting most effectively, select the broadest range that encompasses the specific location where you live or desire to work.</p>
<h4 id="heading-how-to-change-the-location-setting-on-linkedin">How to change the location setting on LinkedIn:</h4>
<ol>
<li>Click on your profile picture or the "Me" icon at the top of the LinkedIn homepage.</li>
<li>Click "View Profile" to access your profile page.</li>
<li>In the "Intro" section, click the pencil icon to edit your information.</li>
<li>In the "Location" field, enter the desired location or select from the suggested options.</li>
<li>Click "Save" to apply the changes.</li>
</ol>
<p>💡 <strong>Tip:</strong> Optimize your LinkedIn location setting by choosing an area that covers a broad radius, ensuring your profile appears in more job searches.</p>
<h3 id="heading-featured-section">Featured Section</h3>
<p>The <strong>Featured</strong> section is the place to proudly display your achievements, awards, best original projects (not direct copies of tutorial projects), and similar content to showcase yourself in the spotlight. This section is arranged horizontally, scrolls like a carousel, and enables you to rearrange and pin your most recent content to the beginning/top.</p>
<p>Examples of content to feature include:</p>
<ul>
<li>Testimonials received</li>
<li>Awards or recognitions received</li>
<li>Published articles or blog posts</li>
<li>Appearances (such as Livestream events)</li>
<li>Presentations or conference talks</li>
</ul>
<p>Keep in mind that others viewing your work might not be developers, so be sure to provide clear descriptions and context for each featured item, including the technologies used if applicable (such as React, Tailwind, JavaScript, and so on).</p>
<p>You can optimize your Featured section by including all relevant materials that demonstrate your skills and experience. Additionally, include content that you believe will effectively grab the attention of recruiters and hiring managers.</p>
<p>I display all of my colorful article thumbnails with external links to each, in the Featured section, transforming it into a visually appealing scrolling magazine rack. 📰</p>
<p>💡 <strong>Tip:</strong> Showcase your best content in the Featured section to capture the attention of recruiters and hiring managers, and remember to update it frequently.</p>
<h3 id="heading-activity-section">Activity Section</h3>
<p>It's vital for you to keep your LinkedIn profile active because a profile without activity will display a "hasn't posted lately" message in the <strong>Activity</strong> section. Recruiters and hiring managers are hesitant to reach out to profiles without activity because they are uncertain whether their attempts to make contact will be successful.</p>
<p>You can keep your profile active by:</p>
<ul>
<li><strong>Creating posts:</strong> Share updates, articles, or insights to showcase your expertise and engage with your network.</li>
<li><strong>Leaving comments on posts:</strong> Interact with others by providing valuable feedback, asking questions, or sharing your thoughts on their content.</li>
<li><strong>Sharing posts:</strong> Amplify the reach of interesting content with your network, helping spread valuable insights and knowledge.</li>
<li><strong>Attending LinkedIn Livestream events</strong>: Participate in live video events hosted by industry experts, companies, or influencers to learn, network, and engage with others (Taylor Desseyn has great ones).</li>
<li><strong>Publishing articles:</strong> Write long-form content on LinkedIn to demonstrate your knowledge, share your experience, and establish yourself as a thought leader in your field.</li>
</ul>
<p>Having an active profile will increase your visibility to recruiters and hiring managers, and since they know you frequently use the platform, they will not be hesitant to reach out to make contact with you.</p>
<p>💡 <strong>Tip:</strong> Keep your profile active to avoid the "hasn't posted lately" message in the Activity section, which may discourage recruiters and hiring managers from attempting to contact you.</p>
<h3 id="heading-summary-about-section">Summary (About) Section</h3>
<p>Everyone seems to have various opinions about what to put in your <strong>About</strong> section. From what I gathered through my profile reviews and research of LinkedIn documentation, the overall idea is to craft it like an elevator pitch.</p>
<p>So, what is an elevator pitch? An elevator pitch is a short speech briefly describing your background, skills, goals, and unique value, typically around 30 seconds to 1 minute (the length of time spent in an elevator with someone).</p>
<p>If you alternatively prefer a more detailed approach to crafting your About section, I recommend following the guidance of LinkedIn employee, Austin Henline. He advises providing five paragraphs that contain the following:</p>
<ol>
<li><strong>A hook:</strong> A captivating opening statement that grabs the reader's attention.</li>
<li><strong>Your past:</strong> A brief overview of your previous experiences and accomplishments.</li>
<li><strong>Your present:</strong> A description of your current role, responsibilities, and ongoing projects.</li>
<li><strong>Your future:</strong> A statement outlining your career goals and aspirations.</li>
<li><strong>Your skills:</strong> A list of your relevant technical and soft skills showcasing your expertise.</li>
</ol>
<p>To further optimize your <strong>About</strong> section and make it more visible in search results of potential employers, be sure to incorporate plenty of relevant keywords, as this section is also keyword-searchable. You can incorporate web developer keywords such as HTML, CSS, JavaScript, React, responsive design, UX/UI design, accessibility, performance optimization, etc.</p>
<h4 id="heading-the-mistakes-i-made">The Mistakes I made</h4>
<p>To further improve your LinkedIn About section, consider the constructive feedback I received from recruiter Molly-May Gallagher. Enhance your LinkedIn summary by clearly stating desired work, highlighting key technical skills, focusing on relevant experiences, detailing current role technologies, and removing unrelated information for a concise, impactful summary.</p>
<p>Also, be sure to clarify your desired job roles to avoid confusion. Alishah Novin from Microsoft pointed out that listing multiple roles, like technical writing and front-end development, as I did, can make your true passion unclear, leading to potential missed opportunities.</p>
<p>💡 <strong>Tip:</strong> Include keywords relevant to your industry and desired job role in your About section to increase search results visibility.</p>
<h3 id="heading-experience-section">Experience Section</h3>
<p>To best optimize the Experience section of your LinkedIn profile, list your experiences relevant to the job roles you are currently seeking (not all of your unrelated tech roles). For each experience listed, be sure to include details for each, including company name, duration, and a brief description of your responsibilities and achievements.</p>
<p>For example, I will share a tech-related experience I included. Since I work part-time remotely as a paid code reviewer for Scrimba, in addition to a detailed description of the job role, I added the following keyword searchable skills: React, JavaScript, CSS, HTML, and Teaching. I also linked to a playlist of my recorded code reviews so that others can see a demonstration of my skills.</p>
<p>💡 <strong>Tip:</strong> If you are currently in college or recently graduated and lack work experience, you can highlight your volunteer experience, club experiences, and projects in your profiles Experience section.</p>
<h3 id="heading-education-section">Education Section</h3>
<p>In the <strong>Education</strong> section, list the degrees and diplomas you have earned, along with the schools, colleges, or universities you have attended. You also have the opportunity to include any additional relevant information, such as participation in activities, societies, or honors you have received.</p>
<p>To best optimize the Education section, emphasize relevant coursework, highlight achievements, and explain the impact of education on your career trajectory as it relates to computer programming.</p>
<p>💡 <strong>Tip:</strong> If you have a time gap between jobs due to a career transition or break, you can create a positive spin on it by adding supplemental work experience such as completing Bootcamps, earning certificates, studying, and freelancing.</p>
<h3 id="heading-licenses-and-certifications-section">Licenses and Certifications Section</h3>
<p>This section lets you showcase your professional certifications, licenses, and achievements. As a web developer, I'm sure you have completed many online courses that issued certificates from schools such as freeCodeCamp, Scrimba, Sololearn, and similar. You can add each of your earned certificates in this section and link to them (I have my linked certificates stored on GitHub).</p>
<p>To add a certification, go to your LinkedIn profile, click "Add profile section," select "Licenses &amp; certifications," and enter the required details such as certification name, issuing organization, issue date, expiration date, and associated credential ID.</p>
<h3 id="heading-projects-section">Projects Section</h3>
<p>As a developer, you are definitely going to want to utilize this elusive yet extremely valuable LinkedIn feature, the <strong>Projects</strong> section. I wasn't even aware this section existed until LinkedIn employee Austin Henline revealed it during a YouTube Livestream.</p>
<p>The Projects section allows you to showcase your work, giving you an opportunity to demonstrate your skills and expertise. For each project, be sure to include a brief description and the technologies used _(<em>remember, not all recruiters and hiring managers are programmers</em>)_. You can also provide a link to the deployed project or repository, which allows others to view it.</p>
<p>I decided to showcase my deployed Tetris project. I followed freeCodeCamp's game tutorial, taught by Ania Kubow, and took it to the next level by adding styling, sounds and music, a scoring system, and more. </p>
<p>When users click on the link to the deployed project directly within the LinkedIn app, they are instantly mesmerized as they suddenly take control of the falling tetrominoes trying to clear completed solid rows. My hope is that they become momentarily lost in the game, and when it ends, they click back to my profile and think, "We have to hire this guy!"</p>
<p>To access the LinkedIn Projects section and add projects:</p>
<ol>
<li>Click on "Add profile section".</li>
<li>Click on "Recommended".</li>
<li>Choose "Add projects".</li>
<li>Fill in the project details, such as the project name, description, and date.</li>
<li>You can add your top 5 skills used in this project.</li>
<li>You can add media such as images, documents, sites, or presentations</li>
<li>Click "Save" to add the project to your profile.</li>
</ol>
<p>💡 <strong>Tip:</strong> To best optimize your LinkedIn profile, include unique projects in your Projects section that will captivate and draw the interest of recruiters and hiring managers.</p>
<h3 id="heading-skills-and-endorsements-section">Skills and Endorsements Section</h3>
<p>The <strong>Skills</strong> section enables you to showcase your abilities, such as HTML, CSS, and JavaScript and allows others to endorse each skill mentioned.</p>
<p>Be sure to add skills that are most relevant to the job roles you are seeking, and prioritize obtaining endorsements for them. The more endorsements you accumulate, the more credible you and your profile appear to potential employers.</p>
<h3 id="heading-recommendations-section">Recommendations Section</h3>
<p>Be sure to utilize the <strong>Recommendations</strong> section of your profile by asking others you have worked with to provide them. Just like receiving endorsements for your skills, having recommendations will also help increase your credibility and will make your profile more appealing to recruiters and hiring managers.</p>
<p>You can also write and provide recommendations for fellow LinkedIn members in your network.</p>
<h3 id="heading-honors-amp-awards-accomplishments-section">Honors &amp; Awards (Accomplishments) Section</h3>
<p>In your LinkedIn profile's <strong>Honors &amp; awards</strong> section, you can showcase your achievements, awards, and recognitions. Be sure to add ( and earn ) relevant honors and awards, as this section demonstrates additional credibility to potential employers, further optimizing your LinkedIn profile.</p>
<p>Honors &amp; awards may include:</p>
<ul>
<li>Coding competition awards</li>
<li>Scholarships and grants</li>
<li>Community leadership roles</li>
<li>Technical writing achievements</li>
<li>Speaking achievements</li>
<li>Mentorship roles</li>
</ul>
<h3 id="heading-creator-mode">Creator Mode</h3>
<p>If you are a content creator, turning on LinkedIn <strong>Creator mode</strong> provides additional tools such as a "Follow" button, analytics, profile topics, and a set of creator tools that you can use to optimize your LinkedIn profile further.</p>
<h4 id="heading-follow-button">Follow button</h4>
<p>The Follow button provides LinkedIn members with an alternative option to connect with you. Once you surpass five hundred connections, a "500+ connections" displays, whereas there is no limit to the number of displayed followers.</p>
<h4 id="heading-analytics">Analytics</h4>
<p>Analytics includes your post impressions, profile views, followers, and your search appearances. You will gain insights into your content's performance by selecting date ranges from a week to a year and choosing from a list of demographics. This information will help you clearly understand who is engaging with your content, allowing you to make informed decisions about your content strategy.</p>
<h4 id="heading-profile-topics">Profile topics</h4>
<p>Creator mode allows you to showcase five "Profile Topics" that highlight your expertise, making it simpler for audiences to understand your focus, enhancing credibility, and attracting a targeted audience.</p>
<p>Creator tools include:</p>
<ul>
<li><strong>Collaborative articles:</strong> Jointly written articles by multiple authors on LinkedIn.</li>
<li><strong>LinkedIn Live:</strong> Real-time video streaming feature on LinkedIn for engaging audiences.</li>
<li><strong>Audio Event:</strong> Virtual audio-based discussions or presentations on LinkedIn.</li>
<li><strong>Newsletters:</strong> Periodic publications sent to subscribers, sharing updates and insights.</li>
<li><strong>Follow link:</strong> Button on LinkedIn profiles for users to follow and receive content updates.</li>
</ul>
<p>The collaborative article is a new feature where the LinkedIn team creates an AI article, and invites select members to participate by adding their valuable insights. </p>
<p>As an active LinkedIn member, I was recognized and invited to participate. As I continue to add value to these collaborative articles, I currently have a "Top Writing Voice" badge displayed. However, I hold this badge for a minimum of 60 days, and if LinkedIn members stop finding my insights valuable, they will take the badge away. (No pressure, right? 😅)</p>
<p>At this time, collaborative articles are by invitation only, but they mentioned LinkedIn members who engage with them by liking or reacting to them will be considered.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2023/09/linkedIn.png" alt="Image" width="600" height="400" loading="lazy">
<em>Attribution: LinkedIn logo by LinkedIn Corporation, used under fair use for informational purposes.</em></p>
<h3 id="heading-additional-tips">Additional tips</h3>
<p>In this section, I included a few additional LinkedIn tips I have learned that are worth sharing with you.</p>
<p>They include:</p>
<h4 id="heading-1-post-external-links-in-the-comments">1. Post external links in the comments</h4>
<p>When sharing content that is located on other platforms using links, do not put the link directly in your LinkedIn post. Instead, add external links in the comments of your LinkedIn post. This tip came from a LinkedIn employee who explained that doing this significantly improves your post's reach/performance on the platform.</p>
<h4 id="heading-2-change-the-default-profile-url-to-your-name">2. Change the default profile URL to your name</h4>
<p>For a more professional URL, you have the option to change the default one created to your name. My original URL was "<a target="_blank" href="https://www.linkedin.com/in/michael-larocca-9315a3202/">https://www.linkedin.com/in/michael-larocca-9315a3202/</a>". I have since changed it to "<a target="_blank" href="https://www.linkedin.com/in/michaeljudelarocca">https://www.linkedin.com/in/michaeljudelarocca</a>"</p>
<p>Here are the steps to changing your profile URL:</p>
<ul>
<li>Click on your profile picture or the "Me" icon at the top of the LinkedIn homepage.</li>
<li>Click "View Profile" to access your profile page.</li>
<li>In the "Intro" section, click the pencil icon to edit your information.</li>
<li>Scroll down to "Edit public profile &amp; URL" on the top right and click it.</li>
<li>On the new page, under "Edit your custom URL," click the pencil icon next to your current URL.</li>
<li>Enter your desired custom URL and click "Save" to apply the changes.</li>
</ul>
<h4 id="heading-3-separate-profile-for-separate-languages">3. Separate Profile for separate languages</h4>
<p>If you speak more than one language, you may be filling out your profile multilingually. Doing so will quickly deplete your allotted character limit for each section and may cause confusion for others viewing your profile. </p>
<p>As an alternative, you can create separate profiles for each language. Maintaining a profile for each language provides the advantage of personalizing them to attract diverse job opportunities in their respective languages.</p>
<p>Here are steps to add a profile in another language (desktop/laptop version only):</p>
<ul>
<li>On the top right, click on "ME."</li>
<li>Then click on "View Profile."</li>
<li>Finally, on the right, click on "Add profile in another language."</li>
</ul>
<h4 id="heading-4-linkedin-learning">4. LinkedIn Learning</h4>
<p>With a premium membership, you can access LinkedIn Learning, an online educational platform offering a wide range of courses. Upon completing these courses, you will receive LinkedIn Learning certificates, which optimize your LinkedIn profile by displaying your skills and professional development to prospective employers and connections. </p>
<p>You can take advantage of a free trial period to explore the platform by signing up for a one-month LinkedIn Premium membership. _(<em>You can take LinkedIn Learning courses from Dylan Israel, a successful graduate of freeCodeCamp and a LinkedIn Learning instructor.</em>)_</p>
<h4 id="heading-5-linkedin-skill-assessments">5. LinkedIn Skill Assessments</h4>
<p>Skill Assessments are FREE tests offered by LinkedIn to evaluate your proficiency in various skills. A corresponding badge will be added on your profile when you pass a Skill Assessment test. If you fail the test, no worries! You are allowed to retake them after three months.</p>
<p>LinkedIn advertises that candidates who complete Skill Assessments are 30% more likely to get hired, so they are definitely worth trying to attain. Programming LinkedIn skill assessments you may be interested in include HTML, CSS, JavaScript, React.js, Angular, jQuery, and Vue.js.</p>
<p>To get an idea of what taking these tests are like, you can watch Kyle Cook's (Web Dev Simplified) recorded Livestream YouTube videos taking them.</p>
<p>Kyle Cook (Web Dev Simplified) LinkedIn Skill Assessments:</p>
<ul>
<li><a target="_blank" href="https://www.youtube.com/watch?v=R5KH_vwcQ48&amp;t=14s">LinkedIn HTML Quiz</a></li>
<li><a target="_blank" href="https://www.youtube.com/watch?v=4iXKlZCYd2s">LinkedIn CSS Quiz</a></li>
<li><a target="_blank" href="https://www.youtube.com/watch?v=V__irponAuA">LinkedIn JavaScript Quiz</a></li>
<li><a target="_blank" href="https://www.youtube.com/watch?v=0va5IF2xu0s">LinkedIn React Quiz</a></li>
</ul>
<h3 id="heading-special-thanks">Special thanks</h3>
<p>Special thanks to Scrimba and the industry experts who reviewed my LinkedIn profile and provided valuable, constructive criticism, which enabled me to optimize it, resulting in a continual flow of opportunities coming directly to me:</p>
<ul>
<li><a target="_blank" href="https://www.linkedin.com/in/dthompsondev/">Danny Thompson</a> - Tech Celebrity!</li>
<li><a target="_blank" href="https://www.linkedin.com/in/austinhenline/">Austin Henline</a> - LinkedIn</li>
<li><a target="_blank" href="https://www.linkedin.com/in/taylordesseyn/">Taylor Desseyn</a> - Recruiter</li>
<li><a target="_blank" href="https://www.linkedin.com/in/alishahnovin/">Alishah Novin</a> - Microsoft</li>
<li><a target="_blank" href="https://www.linkedin.com/in/molly-may-gallagher/">Molly-May Gallagher</a> - Recruiter</li>
<li><a target="_blank" href="https://www.youtube.com/@CodewithLeanne/videos">Leanne Rybintsev</a> - <a target="_blank" href="https://scrimba.com/">Scrimba</a> Livestream host</li>
</ul>
<h3 id="heading-conclusion">Conclusion</h3>
<p>As a web developer, having a LinkedIn profile is equally important as having a resume. Creating and optimizing a LinkedIn profile will help you stand out from the competition, draw the attention of recruiters and hiring managers, and attract a wealth of opportunities directly to you.</p>
<p>Once you have created and optimized your LinkedIn profile, you must stay active on the platform, as inactivity can be seen as a red flag for recruiters and hiring managers. You can stay active by interacting with posts through creation, commenting, and sharing them. You can also attend and participate in LinkedIn Livestream events to keep your account active.</p>
<p>Remember, LinkedIn is a professional platform and should be treated accordingly. Refrain from posting, commenting, or engaging in any form of communication that could potentially damage your reputation.</p>
<p>You can further enhance your LinkedIn profile by increasing your credibility. Make sure to include your honors and awards, consider taking LinkedIn Skill Assessments and courses, and ask for endorsements and recommendations from your network. Also, be on the lookout for new features you can take part in to boost your credibility, such as collaboration articles that award exclusive badges.</p>
<p>Most importantly, don't just take my word for it: regularly update your profile, discover what works best for you, and also observe how others have effectively optimized their LinkedIn profiles. If you or someone else has further optimization tips that I haven't covered, please share them so that we can all have the best-optimized profiles, leading to daily opportunities coming directly to each of us.</p>
<h3 id="heading-other-articles-ive-written-related-to-linkedin">Other articles I've written related to LinkedIn</h3>
<ul>
<li><a target="_blank" href="https://selftaughttxg.com/2022/10-22/LinkedIn-AustinHenline/">LinkedIn Profile Optimization With Austin Henline</a></li>
<li><a target="_blank" href="https://selftaughttxg.com/2023/08-23/revamp-your-resume-and-linkedin-profile-expert-tips-to-get-noticed-and-hired/">Revamp Your Resume and LinkedIn Profile: Expert Tips to Get Noticed and Hired</a></li>
<li><a target="_blank" href="https://selftaughttxg.com/2021/05-21/LinkedInReviewWithDannyThompson/">LinkedIn Review with Danny Thompson</a></li>
<li><a target="_blank" href="https://selftaughttxg.com/2021/03-21/LinkedIn-Profile-Review/">Create a LinkedIn profile that gets noticed by tech recruiters</a></li>
<li><a target="_blank" href="https://scrimba.com/articles/linkedin-for-developers/">How to use LinkedIn as a developer to get a job in tech</a></li>
</ul>
<p>Let's connect! I'm active on <a target="_blank" href="https://www.linkedin.com/in/michaeljudelarocca/">LinkedIn</a> and <a target="_blank" href="https://twitter.com/MikeJudeLarocca">Twitter</a>.</p>
<p><img src="https://uploads-ssl.webflow.com/5f21f5bb63183fc595ff8426/649b64bfb2d7d7f783c83e48_Logo-White-Slogan-e33c0614b0d4934fac45d58883ebb935.jpeg" alt="selftaughttxg logo" width="2649" height="680" loading="lazy"></p>
<h6 id="heading-you-can-read-all-of-my-articles-on-selftaughttxgcomhttpselftaughttxgcom"><strong>You can read all of my articles on <a target="_blank" href="http://selftaughttxg.com">selftaughttxg.com</a></strong></h6>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ A Guide to a Successful Open Source Journey – Lessons from Real-Life Experience ]]>
                </title>
                <description>
                    <![CDATA[ The journey to becoming a successful open-source contributor can be intimidating, frustrating, or confusing depending on your level of confidence, commitment, and expertise. I have had my fair share of all sides of the emotions that come with contrib... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/guide-to-a-successful-open-source-journey/</link>
                <guid isPermaLink="false">66c4c60226a77d9936ef0a67</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ community ]]>
                    </category>
                
                    <category>
                        <![CDATA[ open source ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ kaxada ]]>
                </dc:creator>
                <pubDate>Mon, 02 Oct 2023 20:07:51 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2023/10/cover-image.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>The journey to becoming a successful open-source contributor can be intimidating, frustrating, or confusing depending on your level of confidence, commitment, and expertise.</p>
<p>I have had my fair share of all sides of the emotions that come with contributing to open source in the one and a half years (at the time of writing this article) that I've contributed to open source, and I am inspired to share some of those insights with you. </p>
<p>Some of the insights here are relatable even beyond open source and tech, and could be applied in your daily life while making choices and strategies. </p>
<p>Let’s begin!</p>
<h2 id="heading-a-useful-analogy">A Useful Analogy</h2>
<p>The world is a global village. I could move between continents in hours thanks to air transportation. I can be in my room and know what is happening in a city thousands of miles away in real time thanks to the internet. Also, someone can know about me without us having to meet physically depending on how much public information they have about me. </p>
<p>Pause for a second, open a new tab, search your name (or digital username), and see what results are returned first. Are they a reflection of how you want the world, your potential employer, your next business opportunity, or your next potential customer to see you?</p>
<p>If you are a developer, designer, community manager, or documentation writer, do the search results reflect that?</p>
<p>Did you know that every time you make an open-source contribution it leaves a digital trace of you on the internet that later translates into a search result?</p>
<p>Most times when people are starting out in a field or career, they are scared of building or growing in the open because of fear of criticism, ego, impostor syndrome, or even lack of platform. </p>
<p>The more you distance yourself from public scrutiny, the more likely you are to have your own work surprise you once you let it out. How? While you are building alone, you think you are the best because you have created your own world but in the real world, you are most probably not the best at what you are doing. </p>
<p>The earlier you put what you are building out there, the faster it will be for you to create healthy competition, receive constructive criticism, and be challenged by those who are doing what you are doing better than you.</p>
<p>I am not a huge fan of building personal projects that are going to sit on my local machine or personal computer because then, they will only be available in my world and not to the world out there. </p>
<p>The best way to challenge myself with a new tech tool is by looking for an open-source community using that tool and making a contribution. I get better knowledge of how the tool I am learning is used on a real project and in the end, I am contributing to my digital footprint and increasing my meaningful search results. </p>
<p>Let me create another analogy here. If both of us are going for an interview and all you have are personal projects on your computer or GitHub account, and then all I have to show are commits that were merged into projects that are used by thousands of people, who do you think will pique the interest of a hiring manager with a technical background?</p>
<h2 id="heading-experiences-and-lessons-in-my-open-source-journey">Experiences and Lessons in My Open Source Journey</h2>
<p>I quit a job at a local tech startup because I didn’t see more growth in my career. At that time I knew what I wanted but didn’t know where to find it. I wanted to be challenged to grow and experiment on more challenging things in my tech career and get better opportunities. </p>
<p>I also had colleagues who had done some paid internships that changed their lives for good and could not stop thinking of how I could make similar achievements. I once decided to look for any community or project that matched the skills I wanted to be good at. At that point, I started learning a lot about how to navigate the world of open source, and here are my takes:</p>
<h3 id="heading-look-out-for-a-community-or-project-to-contribute-to">Look Out for a Community or Project to Contribute to</h3>
<p>One of the quickest methods I used to find open-source communities or projects that is open to contributors was by checking sites that offer internships and are looking for participating organizations, both past and present. The most common and easier resources are <a target="_blank" href="https://summerofcode.withgoogle.com/programs/2023/organizations">Google Summer of Code (GSoC)</a>, <a target="_blank" href="https://developers.google.com/season-of-docs/docs/participants">Google Season of Docs (GSoD)</a>, and <a target="_blank" href="https://www.outreachy.org/past-projects/">Outreachy</a>.</p>
<p>Once you find a community/project you’d want to contribute to, do some background study to make sure that the community is active.</p>
<p><strong>Note</strong>: Some communities are open source but are not open source friendly (mostly to new contributors).</p>
<p>Find out when they last merged commits, how many issues on their repositories are open and when the last one was closed. How many contributors do they have? </p>
<p>Most importantly, check if they have an active community that has real-time interactions through communication channels like Discord, Slack, Discourse, GitHub Discussions, IRC, and emailing lists. </p>
<p>Go the extra mile and check whether they have a meeting calendar and attend some of those meetings. Most times, public meetings always have public minutes and if you can dig into those resources and check out the discussions they've had, it will give you a perspective about the meetings before you even attend.</p>
<p>A distributed community that works remotely but doesn’t have a way of synchronizing is most times a red flag.</p>
<p>Communities that communicate actively are easier to navigate faster than those that don’t because you get a chance to ask the experts. This saves a lot of time in researching a particular subject in the community and understanding a large codebase, and gives you a feeling of being welcomed.</p>
<p>Once you find that community, make the "dramatic entry". Make the "noise" that you are there, that you have arrived. Introduce yourself in the right channels, and talk about yourself (but only the important information). I like calling it the "dramatic entry".</p>
<p>They won’t see you unless you show up and shout out.</p>
<p>Most communities have a lot of people (most times more than 500 or 1000) in their communication channels from different time zones. If you don’t make the "noise" then no one will notice you. And it is not a one-time introduction thing. Keep the "noise" going but make sure you are not bugging the members in the community. </p>
<p>It would be a weekly or bi-weekly update on how you are progressing in setting up the project and running it on your local machine, sharing articles that you have found over the internet that align with the community channel’s description, or even appreciating someone whose work or efforts you found helpful to you or to the community at large. Make sure they don’t forget that you are around — out of sight, out of mind.</p>
<h3 id="heading-making-the-necessary-noise-is-not-enough">Making the necessary noise is not enough</h3>
<p>You have now settled down on a repository/community/organization. You should make meaningful contributions to the project. Sometimes it takes longer than you'd imagine but you need to show effort. </p>
<p>I remember when I joined <a target="_blank" href="https://chaoss.community/">CHAOSS</a>, it took me more than 3 months to make a successful contribution of fixing a typo in a documentation. Just a typo! Mostly because the build process of the documentation and the contribution process was a little more abstract than that I’d interacted with before. </p>
<p>But while I was at it, I made sure that the maintainers knew that I was not quiet during that time and that I was putting in the effort to understand the large codebase and the contribution procedure and they were willing to help.</p>
<p>Magnets attract magnet materials. Seniors, Experts, and maintainers are more willing to help when you show that you are putting in personal effort and commitment to make things happen. And that is a general rule in life.</p>
<p>No one is responsible for you and everyone is busy doing something else but you have to show that you are putting in the necessary effort. This is enough to pique the attention of whoever should help you.</p>
<p>Now that you are putting in the necessary effort, it is important that you are putting the effort into meaningful contributions. As you progress and get assimilated into the community, you will get a grip on their codebase, knowledgebase, the inner workings of the community, and grow your network. </p>
<p>With time, you can take on harder tasks, issues, or open roles. You may be a non-code contributor and working with documentation, design, or community management. At a certain point, you'll become familiar with the direction of the whole community and you can make a suggestion to change a process, design, workflow, introduce new knowledge, or even facilitate a weekly meeting.</p>
<p>Whatever you do make sure it adds value to the community. Remember, good work never goes unnoticed.</p>
<p>If you have to show around your work more than it shows itself or other people show it off, then it is not yet good work. For those making code contributions, writing code in the community is not enough. There is more to the community than commits and merges. Communities need designs, brands, meeting facilitators, media managers, mentors to newcomers and interns, publicity teams, and QA teams. </p>
<p>There is usually more that a strong community does other than writing code. Look around and get involved in more community initiatives. I did most of the things I have highlighted above during my first year of joining open source.</p>
<h3 id="heading-that-is-not-all">That is Not All</h3>
<p>I have come to appreciate that putting in the effort is not enough. Working hard is not all there is to success.</p>
<p>There is always a percentage of luck and opportunity in every success story.</p>
<p>While you put in the necessary effort you must deliberately position yourself in the path of opportunities. Build healthy networks with seniors, board members, or in general, people who make the decisions in the communities or projects. Check on them in their DMs, give them mentions, and credit them for their significant works in the community where necessary.</p>
<p>The easiest way for your name to be mentioned in a room of opportunities is when it is on someone's mind.</p>
<p>If you join communities with the motive of being a prospective intern for internship programs, make sure that the community that you are joining participates in those internship programs frequently. </p>
<p>You’d probably also want to join before the internship periods, and create networks, and community bonds. Look for the projects that are usually selected for the internships and show effort around those. By the time a task in one of those projects is listed for the internship, you'd already be an insider and can even influence the decision-makers to bias their choice toward you. That is working smart and hard at the same time.</p>
<h2 id="heading-conclusion">Conclusion</h2>
<p>The road to becoming a successful open-source contributor may be different for all of us but I believe there are things that cut across. </p>
<p>Success has a domino effect. One successful task, internship, job, or solution creates an opportunity for the next.</p>
<p>I wish you luck in your journey and if you are already there, share this information with someone who may need it.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ My First Year as a Professional Developer – Tips for Getting into Tech ]]>
                </title>
                <description>
                    <![CDATA[ Hi everyone! In this article I'll share my thoughts on my first year of professional experience as a software developer. It's almost been two years since I got into coding and a year since I became a full-time dev. I started writing this article mere... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/my-first-year-as-a-professional-developer-tips-for-getting-into-tech/</link>
                <guid isPermaLink="false">66d45f15182810487e0ce19c</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Career Change ]]>
                    </category>
                
                    <category>
                        <![CDATA[ learning to code ]]>
                    </category>
                
                    <category>
                        <![CDATA[ personal development ]]>
                    </category>
                
                    <category>
                        <![CDATA[ self-improvement  ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ German Cocca ]]>
                </dc:creator>
                <pubDate>Mon, 15 Aug 2022 20:24:37 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/05/jiangxulei1990-feX-KFWRR5o-unsplash.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>Hi everyone! In this article I'll share my thoughts on my first year of professional experience as a software developer.</p>
<p>It's almost been two years since I got into coding and a year since I became a full-time dev.</p>
<p>I started writing this article merely as a self-reflection exercise. But I thought maybe someone who's in a similar position as I am or is just starting to code right now might find some of my experiences useful or interesting.</p>
<p>I plan on talking about a lot of things here. I'll go over everything from my background and how I switched careers at almost thirty to how I learned to code and chose my tech stack.</p>
<p>I'll also discuss what I plan on learning in the future and why, along with some general advice and my overall feelings and thoughts about this first year of professional work.</p>
<p>The way I'm going to structure this is that first I'm going to tell you the story of how I became a developer. Then I'm going to list the main thoughts and concepts that have helped me get to where I am now.</p>
<p>This article is going to be <a target="_blank" href="https://www.freecodecamp.org/news/author/gercocca/">a bit different from what I usually write</a>, in the sense that it won't be too technical and it might get too self-referential at some points. But the idea is to take you through my experience and thought process so you can get an idea of how things could be if you walked the same path.</p>
<p>Although always remember my opinions and experiences don't necessarily extend to everyone else. And I don't claim that my choices and preferences are necessarily the best. So you know... if you read through it all, just take whatever is useful to you and ignore the rest. :)</p>
<p>Enough cháchara, let's go!</p>
<h2 id="heading-table-of-contents">Table of Contents</h2>
<ul>
<li><p><a class="post-section-overview" href="#heading-my-background">My background</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-how-i-learned-to-code">How I learned to code</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-my-first-job-as-a-developer">My first job as a developer</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-present-tense-and-future">Present tense and future</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-tips-and-thoughts">Tips and thoughts</a></p>
<ul>
<li><p><a class="post-section-overview" href="#heading-learn-how-to-learn">Learn how to learn</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-try-to-find-a-path">Try to find a path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-do-you-need-a-college-degree-to-work-in-technology">Do you need a college degree to work in technology?</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-what-kind-of-developer-do-you-want-to-become">What kind of developer do you want to become?</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-how-to-pick-a-tech-stack">How to pick a tech stack</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-dont-jump-around-too-much">Don't jump around too much</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-dont-be-too-comfortable-or-get-ahead-of-yourself">Don't be too comfortable or get ahead of yourself</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-how-to-know-when-youre-job-ready">How to know when you're job ready</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-sometimes-not-coding-is-the-best-way-to-learn-about-code">Sometimes not coding is the best way to learn about code</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-diversify-your-learning-sources">Diversify your learning sources</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-keep-in-mind-that-nobody-knows-everything">Keep in mind that nobody knows everything</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-therere-good-and-bad-things-too">There're good and bad things too</a></p>
</li>
</ul>
</li>
<li><p><a class="post-section-overview" href="#heading-wrapping-up">Wrapping up</a></p>
</li>
</ul>
<h1 id="heading-my-background">My Background</h1>
<p>I'm a 29 year old guy from Buenos Aires, Argentina.</p>
<p>I grew up here, and once I finished high school I had no idea what to do with my life. I knew I had to go to college because that's what everybody else was doing. And according to "general knowledge", that was what was going to give me the best chances at life. So I started investigating around different career paths...</p>
<p>I was a shy and introverted adolescent in high school, so in this new chapter of my life I decided to change that and get more in contact with people and society in general.</p>
<p>I was attracted to social sciences studies such as philosophy, psychology and history. But It worried me that these professions weren't very in demand in the labor market. So I ended up choosing a major in human resources, as I thought it was a good match between social sciences and business.</p>
<p>I made this decision completely by myself, as I was part of the first generation of college students in my family. I didn't really know anyone who could guide me in this situation. I just made the best guess I could with the information I had.</p>
<p>Fast-forward a couple of years and I was starting to heavily regret my choice. I wasn't interested at all in what I was studying. The rigid structure and bureaucracy of college bored me to death and I had the feeling that I was wasting all my youth hearing people I didn't respect giving me meaningless lectures.</p>
<p>I started analyzing again what other career paths could I take, but nothing seemed to convince me enough. I even consulted with a group of vocational orientation professionals who charged me a ton of money for telling me that I was going to be a great HR manager in the future and that I should "just keep going".</p>
<p>This together with the fact that I had already put two years into this college thing convinced me to "just keep going".</p>
<p>Fast-forward another couple of years and I still felt the same way, but at least I was close to graduation and I was also working. So I was still bored to death but at least I was making money out of it.</p>
<p>I finally graduated and exited college with the feeling of having learned almost nothing, just happy that I was finally going to have more free time.</p>
<p>Regarding work, I started climbing the corporate ladder. Switching jobs every once in a while, making a tiny bit more money, and working for big and well known companies.</p>
<p>At this point I somehow got convinced that I liked this life, and even though I never enjoyed my job or being in the office environment, this was part of the deal.</p>
<p>In 2017 I was working for a very big industrial company and was offered the chance to move almost a thousand miles away from Buenos Aires, in exchange for a salary raise and the promise of future professional growth. I thought about it and accepted, as at the moment it seemed like too much of a great opportunity to pass by.</p>
<p>The work environment in this new position was terrible. I had to deal with crappy tasks, crappy leaders, and crappy people in general. I was learning nothing and the promises of future professional growth ended up being BS.</p>
<p>Things kept going the same direction for a few years, and when the pandemic arrived I was working harder than ever, often putting in nights and weekends, but somehow my leaders weren't happy with my effort.</p>
<p>I was feeling stuck and bitter. I left my family back in Buenos Aires in order to grow my career, and even though I was working as hard as I could, I wasn't collecting any profits and I was disliking my job more than ever.</p>
<p>At this point I finally opened my eyes and realized I couldn't be there anymore. I didn't know what to do next but I definitely knew I had to get out of there.</p>
<p>Then I saw an ad somewhere about a programming course and started investigating coding. I was always interested in technology, and at the moment it just felt right to occupy my mind with something new.</p>
<p>I didn't think about it as a way to get a new job, but as a hobby, a way to get my brain to think about something else.</p>
<h1 id="heading-how-i-learned-to-code">How I Learned to Code</h1>
<p>So after seeing this add and getting interested in coding, I did what most people do when looking for information: I Googled things, opened a ton of browser tabs, and watched a million YouTube videos.</p>
<p>I remember at the time I often couldn't understand a single thing about those videos. So many strange terms where used and people related each of those terms to other topics I had no idea about.</p>
<p>I didn't really know how computers worked, much less how the internet worked. I didn't know what a programming language was, why there were so many of them, what was the difference between front and back-end, what a function was, what a variable was, what on earth was SQL ... So many concepts and all of them completely new.</p>
<p>I just didn't know where to start. Learning to code felt <a target="_blank" href="https://www.youtube.com/watch?v=kGcKOXk9Qbs">like staring at the wall of Game of thrones</a>.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/08/image-1.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p><em>I was feeling like the recruiter here...</em></p>
<p>Here's where I got back to freeCodeCamp (I had done a bit of a basic HTML and CSS course a few years ago) and also downloaded an app called <a target="_blank" href="https://getmimo.com/">Mimo</a> (which helps you learn to code in a <a target="_blank" href="https://duolingo.com/">Duolingo</a> kind of way).</p>
<p>These structured courses helped me organize my learning and grasp the basics of things before moving onto more complex topics. I dedicated a few hours every day to these two resources, and after a few months I was able to build a very very simple HTML and CSS page.</p>
<p>After that I felt I needed to interact with other people who were in the same learning path I was. I wanted to share knowledge with others, hear from other people's experiences, and check if what I was doing and learning made sense compared to what everyone else was doing.</p>
<p>The way I got to this was by signing up for a few online bootcamp courses. I liked that classes were live with a professor and a bunch of other students. This meant that I had the chance to ask questions, hear other people's questions too, and compare myself to others.</p>
<p>Four months went by and at that point I was completely into coding. I'd become comfortable with HTML and CSS, and also learned basic programming concepts with JavaScript. I was dedicating absolutely all my free time to this and even though slowly, I felt like I was making progress each day.</p>
<p>By this time luckily I was able to switch jobs (still within the human resources field) and get back to Buenos Aires. I was working in a much nicer environment and I was happy with my job and the team I had. But I still kept coding and learning about it every day. I just liked it a lot and felt I could be good at it some day.</p>
<p>A few more months went by, I completed more bootcamp courses, and got comfortable with React as well. I was able to build some more interesting and "complex" projects on my own and with the passing of time I got more and more curious about how could it feel to do this for a living.</p>
<p>I could somehow picture myself as a developer, and after doubting a lot I decided to give it a try and started applying for jobs.</p>
<p>I got rejected A LOT and struggled BIG TIME with the few interviews I was able to get (you can read more about that in <a target="_blank" href="https://www.freecodecamp.org/news/problem-solving-and-technical-interview-prep/">the article I wrote about tech interview tips</a>).</p>
<p>Some of those interviews were like a reality check for me in the sense that they made me realize there was still an immense amount of things I knew nothing about and I'd need to keep improving if I was ever to have the chance of working as a dev.</p>
<p>These experiences kind of hurt my self esteem and made me doubt if I could do this. I gave up coding for a few weeks for the first time in almost a year, but eventually got back to it. I just liked it a lot and felt like I had to prove the people who rejected me wrong.</p>
<p>By this time I started to expand the resources I was using to learn. Live classes weren't that interesting for me anymore since I felt I didn't need constant feedback from others like I did when I was starting.</p>
<p>Now that I had a wide array of knowledge, terms, and concepts at least superficially present in my mind, I could easily take advantage of asynchronous resources like videos, articles, and documentation.</p>
<p>And more importantly, I knew what path I needed to go through in order to learn what I needed to learn to get to the jobs I wanted.</p>
<p>So I reduced the number of live classes I was taking, and started getting more into videos, articles, and documentation of good trusted sources I found.</p>
<p>Also, I started writing about each of the things I was learning, which made a huge difference for me as it helped me internalize knowledge, go into detail on each of the topics I learned, and gain confidence in a way I hadn't experienced before.</p>
<p>In parallel I was still going through different interview processes and feeling better and more confident in these situations. And in one of these processes I ended up getting hired. 🙃</p>
<p>After a year of learning, burning my brain, and dedicating absolutely all my free time to code, I finally reached my goal.</p>
<p>I remember I felt as happy as I'd ever felt when I got the news. It felt like ending a marathon. I'd never before put so much consistent effort into something, and the feeling of going from knowing nothing about technology to being able to call myself a "programmer" was amazing.</p>
<p>It was really a great moment, but to tell the truth, I was also scared to the bone... When I looked into the mirror I didn't see a programmer. I saw a guy who still didn't know much. And now I was going to switch careers and put my financial (and emotional) stability at risk. Crap... 😳</p>
<h1 id="heading-my-first-job-as-a-developer">My First Job as a Developer</h1>
<p>Luckily, all the fears I had going into my first developer job were unfounded. I landed on an amazing company, and got to work on an amazing team with an amazing leader.</p>
<p>There were TONS of new things to learn, and at moments I couldn't understand a single thing. But my team made it clear to me that this was what it was supposed to feel like and that I should be patient and stick to the process of learning.</p>
<p>I did, and I took it step by step. With the help of my leader and teammates I was able to become pretty much proficient in a matter of months.</p>
<p>My team had a great culture and our leader encouraged us to share knowledge all the time. If someone found a bug, created a new feature, or wrote some documentation, that had to be shared with the rest of the group.</p>
<p>The same went for when someone made a mistake. Mistakes were not treated as opportunities to blame someone, but as chances for everyone to learn.</p>
<p>We had weekly meetings in which we shared this kind of information with each other. Through this continuous exchange I made a huge "click" in my mind. I understood <strong>no one knows everything</strong>.</p>
<p>Before I got this job, one of my biggest fears was that I wasn't prepared enough. There were many things I knew nothing about and I felt I "was supposed" to know them. But after getting to know developers with 5, 8, or more years of experience, I understood even with that amount of study and preparation, they still don't know everything. And that's ok, because no one can.</p>
<p>The size of the technological world humans have created and the constant evolution of it just makes it impossible for a single person to understand and know every single detail.</p>
<p>What I think is truly important is to deeply understand the given set of tools you work with in your environment, and to have a superficial understanding of the general system you work within.</p>
<p>But even then, you'll still never understand everything. <strong>Learning new things all the time and figuring things out is a core part of the job</strong>. In fact, what most companies pay engineers for is to figure things out. You just face problems you don't know how to solve at first, and slowly figure them out until you arrive to a solution.</p>
<p>This single idea was very powerful to me, and allowed me to get over the impostor syndrome I felt.</p>
<p>Overall I was feeling awesome at my new job. I was working remotely all the time (which I love and allows me to spend more time with my family and pets). I was working with people I felt related to in the sense that everyone was interested in sharing knowledge and constantly learning. And I felt my job was stimulating and interesting.</p>
<p>I was using my brain everyday, having to think in order to solve stuff, and that made me feel alive and useful instead of the zombie-like feelings I had in past jobs.</p>
<p>The feeling I had (and still have) is that my job and my hobby are the same thing. I'm not longer living for the weekend (<a target="_blank" href="https://www.youtube.com/watch?v=fGardUiWjR4">great song</a> by the way). I enjoy my job and I still dedicate most of my free time to learning and doing code-related things because I like it.</p>
<h1 id="heading-present-tense-and-future">Present Tense and Future</h1>
<p>After 9 months at my first job as a developer, I got the chance to switch jobs again. It was hard to leave such a great team and leader, but in my current position I'm able to work with cool technologies on a big and interesting project. Also, changing companies and projects has allowed me to understand a little bit better the process of software development and how different companies manage it.</p>
<p>It's also very interesting to get to know other fellow developers and learn from them. I feel there're things to learn from every single person working in this industry, so getting to know and work with new people every once in a while is something I'd like to keep practicing.</p>
<p>Besides focusing on my job, I also got back into college to study computer engineering. I made this decision because I felt most of the courses and classes I took focused heavily on learning to use tools (such as React or Node for example), but I lacked the basic knowledge those things were built upon.</p>
<p>I wanted to have deep knowledge about computer science topics too, and even though there're many ways in which you can get this knowledge, college made sense for me.</p>
<p>I find it funny that I'm having a completely different experience now compared to my first time at university. I'm attending classes with curiosity and learning at least a few useful things every time. Being truly interested in what you're learning and understanding the purpose of the information really makes a huge difference.</p>
<p>And besides those two things, I'm also working as a part-time assistant teacher in a coding bootcamp and trying to periodically write articles.</p>
<p>Sharing knowledge with others is something I really like and appreciate about the coding world, and without a doubt is one of the things that has allowed me to learn the most. <a target="_blank" href="https://www.youtube.com/watch?v=tkm0TNFzIeg">Lots of people have benefited from this practice</a> and I'm not an exception.</p>
<p>Regarding the future, I want to train myself as a well rounded software engineer. And by this I mean I'm aiming to gain knowledge about the whole ecosystem of things that lays around the creation of web-based software: front-end and back-end development, testing, infrastructure, cloud technologies, CI/CD, systems design and so on.</p>
<p>I feel that having at least a superficial knowledge of the core concepts in each of these fields is important and valuable, even though if end up specializing in a certain field later on. So this is what I'm directing my attention towards at the moment... and the rest is just to keep going.</p>
<p>Reflecting on the steps I took in the last few years, from the position I'm in now, I kind of appreciate how the experiences I had led me to where I am now.</p>
<p>Working in the social sciences environment for several years allowed me to gain the social skills I lacked when I was an adolescent. Also, working in toxic environments forged my character and gave me the ability to appreciate good teams and leaders.</p>
<p>It's likely that if I had never gone through those unpleasant experiences I would've never gotten into coding.</p>
<p>Life is really weird... I don't like to pretend I know how it works. I don't think anyone does. But in these past years I learned for myself that I can do whatever I set my mind to if I put enough time and effort into it.</p>
<p>I also learned that I should never settle for a situation I'm not comfortable in. What I like to do for a living is learning, thinking, and using my brain to solve problems.</p>
<h1 id="heading-tips-and-thoughts">Tips and Thoughts</h1>
<p>So now that we're done with the <em>telenovela</em>, I'm going to present you with the main concepts and thoughts that have helped me get to where I am now.</p>
<p>Again, keep in mind this is not direct advice. Some of these things might not apply to you, but the idea is to share them so you can analyze and make decisions for yourself.</p>
<h2 id="heading-learn-how-to-learn">Learn How to Learn</h2>
<p>If you'd like to become a developer, become comfortable learning things constantly. As I mentioned, I think this is a core part of the job for most of us.</p>
<p>Get used to the struggle of not understanding things at first, asking questions, doing research, making little or no progress at all, giving it another try, googling, watching videos, reading articles... and slowly but surely getting to what you want.</p>
<p>If you struggle and at times feel you're just not capable of understanding anything, that's ok! We all feel that way. The important thing is to be consistent, don't give up, be curious and keep going. You'll eventually wrap your head around things – just don't expect it to be easy or quick.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/08/image-39.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>I think the best way to learn how to learn is just to keep trying. It's like a muscle: if you push it it will get stronger.</p>
<p>The cool thing is that things get easier as you advance. The more concepts and ideas you understand, the more connection points you'll have for the next topic you get into, which will accelerate your learning curve and help you move faster.</p>
<h2 id="heading-try-to-find-a-path">Try to Find a Path</h2>
<p>The best thing about learning how to code is that there's so much information out there. The worst thing about it is also that there's so much information out there.</p>
<p>At the beginning everything sounds foreign and hard, so I think getting some kind of structure is of great help.</p>
<p>There're many sources for you to choose from. Free and with a cost, live or asynchronous, to learn alone or in a group... It's up to you and what you find works for you.</p>
<p>I'd say it's a good idea to start with something free to test if you like it. Then try different sources and work with the one or two you're more comfortable with.</p>
<p>Also, during the first steps, I feel like having the companionship of a tutor or a community is key to continue your learning path.</p>
<p>So much info can be overwhelming and it can be hard to know what to do next. A community and people to ask questions from can help diminish this level of uncertainty at the beginning.</p>
<p>Live classes solved this problem for me, but there are tons of ways to get in touch with people who are learning to code, so find one that suits yourself.</p>
<p>Also, after a while and once you have a clear understanding of your environment and what do you want to do, live classes can start to get less efficient and asynchronous learning becomes the best thing to do.</p>
<p>So getting to know useful and trustworthy sources of knowledge is key. And I don't have a recipe for this – for me it was just a matter of countless hours of exploring blogs, YouTube channels, and websites. And of course still all the time I'm finding great resources...</p>
<p>And about that, <a target="_blank" href="https://alexandria-rust.vercel.app/">here I've put together some of the coolest resources I've found</a> recently. Maybe it could be a good starting point for somebody. I'd also like to receive recommendations if you have any. 😉</p>
<h2 id="heading-do-you-need-a-college-degree-to-work-in-technology">Do You Need a College Degree to Work in Technology?</h2>
<p>Absolutely not. I was able to get a good developer job without a related college degree.</p>
<p>Also, if you're just looking to switch jobs and get into tech, I'd recommend going to a bootcamp or completing some free online courses. It will probably be much quicker and cheaper for you than learning through college.</p>
<p>What I do think is that if you can afford going to college (both money and time wise), a degree won't hurt at all. And through college you can learn a series of general foundational concepts not often available in a bootcamp or programming courses (though this information is also available in other media and for free as well).</p>
<p>In my country, college education is relatively cheap and there are quality free options as well. So college was a reasonable choice for me. But this may vary from country to country and from person to person.</p>
<h2 id="heading-what-kind-of-developer-do-you-want-to-become">What Kind of Developer Do You Want to Become?</h2>
<p>Once you start to comprehend the technology world, you'll see that the software engineer profession has many different paths and nuances. To name a few:</p>
<ul>
<li><p><strong>Front end developers:</strong> Build the visual side of websites</p>
</li>
<li><p><strong>Mobile developers:</strong> Build mobile apps</p>
</li>
<li><p><strong>Back end developers:</strong> Work with all the software that is not directly exposed to the end user, like databases, authentication, and so on.</p>
</li>
<li><p><strong>Testing / QA:</strong> These people write programs to test that the software developed works as expected.</p>
</li>
</ul>
<p>And many other paths like <strong>infrastructure, data analytics, robotics,</strong> and so on.</p>
<p>At first you won't be able to tell the difference between the one and the other, and that's ok. A good idea is to do a little research to understand all the possibilities that exist within the software engineering world, and see what you like most.</p>
<p>Also keep in mind there're different environments you can work in. From huge worldwide corporations to tiny startups, to freelance work, to starting your own company... Anything is possible.</p>
<p>Different fields and different environments make different experiences, and some might be better suited for what you like and what you're interested in. And also they'll require you to learn different things to get to work in those places.</p>
<h2 id="heading-how-to-pick-a-tech-stack">How to Pick a Tech Stack</h2>
<p>This is closely related to the kind of job and the environment you'd like to get. Though all knowledge is useful, some technologies are more related to one field and one type of environment in particular. So choosing carefully what to learn will help you use your time more efficiently and get to your goal quicker.</p>
<p>If I had to give a general path that applies to most people, I'd say get to know basic HTML, CSS and core programming concepts with JavaScript (variables, functions, loops, conditionals, data structures, and so on).</p>
<p>There're are lots of online resources where you can get this knowledge, and having these concepts under your belt will help you to some degree no matter what path you choose later.</p>
<p>I also feel that it's the easiest way to get into software since you start from a visual perspective that will allow you to build at least a very simple website in a few weeks.</p>
<p>Once you're there, I'd recommend that you analyze the different possible career paths and decide what you like the most or find the most interesting.</p>
<p>Watch videos, read articles, talk to people... Get a feeling of what each kind of job is about and what technologies are used in each of them. Then based on that, keep learning.</p>
<p>I find it's also important to choose based on what's available for you. For me, the bootcamp I was learning in had React and Node courses available, so that kind of laid the path for me. Maybe if they had Angular and Python courses I would've learned those technologies instead.</p>
<p>I don't really think it makes that much of a difference as long as the technologies serve your purposes. In the long run, technologies are only tools. And you can use many different tools to arrive to the same results.</p>
<p>Also keep in mind no choice is definitive. I mean, if you get into something and find that you don't like it, you can always get back and learn something else. It's useful to have some kind of plan and learning path, but it's not something rigid that can't be changed ever again.</p>
<p>Just to give you a superficial idea, the path I followed (and I'm still following) looks like this:</p>
<ul>
<li><p>HTML</p>
</li>
<li><p>CSS</p>
</li>
<li><p>Git and GitHub</p>
</li>
<li><p>Basic terminal usage</p>
</li>
<li><p>JavaScript</p>
</li>
<li><p>React</p>
</li>
<li><p>Node, Express, MongoDB and PostgreSQL</p>
</li>
<li><p>Algorithms and data structures</p>
</li>
<li><p>Testing: Jest, react testing library and Cypress</p>
</li>
<li><p>TypeScript</p>
</li>
<li><p>Intermediate terminal usage and scripting (Bash)</p>
</li>
<li><p>React Native</p>
</li>
<li><p>Firebase / AWS</p>
</li>
<li><p>GraphQL</p>
</li>
<li><p>Python</p>
</li>
<li><p>Docker</p>
</li>
</ul>
<h2 id="heading-dont-jump-around-too-much">Don't Jump Around Too Much</h2>
<p>The idea of having a learning path is to provide structure and meaning to knowledge you'll acquire, so you can get to your goals quicker.</p>
<p>As I mentioned before, there's a huge amount of information out there and that's awesome if you know what you're looking for. But if you're not certain about what you need to learn, you might get lost between all the different possibilities and end up knowing just a tiny bit of a lot of things – and that's not really useful.</p>
<p>At least at the beginning, I'd recommend that you dedicate at least a few weeks to each new tool or concept you're learning. Make sure the knowledge sinks in and build a project or two with the tool you're learning, and then hop on to the next thing.</p>
<p>If possible, with each new thing you learn, try to add it to the same project or build a new one with all the tools you know up to that point.</p>
<p>For example, if you learned React before and now you're learning about back-end with Node, a good idea would be to build a front-end for that back-end too. Practice and repetition will make you better.</p>
<p>I also wouldn't recommend learning more than one thing at the same time. For example, let's say you're building your first React project and you're using TypeScript for the first time as well. That could be problematic, because when you get an error you might not be able to distinguish if it's a React or a TypeScript thing. You could also confuse concepts that belong to one technology with the other.</p>
<h2 id="heading-dont-be-too-comfortable-or-get-ahead-of-yourself">Don't Be Too Comfortable or Get Ahead of Yourself</h2>
<p>Following the previous thought, I think it's important to push yourself and try to learn new things all the time. But it's also important to know where you are and control your rhythm. By this I mean, know when you need to move to the next thing and know when you need to stick to what you're learning at the moment.</p>
<p>This is a hard thing to know, and there's no way to be absolutely sure. I'd say you don't need to become an absolute expert, but at least build two decent projects with each technology you learn.</p>
<p>Make sure you understand the basic concepts behind it, understand the most common errors and problems you can face using it, compare your code to other people's code, and so on. If you feel you understand and can relate to most concepts regarding to that particular technology, then you're probably ready to learn something else.</p>
<p>Regarding what to learn next, that depends on your learning path and the things you've learned previously. I'd say a good sign is when you're able to connect some of the previous knowledge you have to the new things you're learning.</p>
<p>For example, if you learned HTML and now you're getting into CSS, you'll be able to understand how CSS helps you configure how HTML elements look and behave. If you learned JavaScript before, you'll be able to understand how TypeScript helps you control types and so on.</p>
<p>On the other hand, if you're <a target="_blank" href="https://www.freecodecamp.org/news/top-javascript-concepts-to-know-before-learning-react/">trying to learn React without having a clue about JavaScript</a>, you're very likely to mix concepts and confuse what technology is responsible for each thing (for example, I've seen many people think <code>map</code>, <code>filter</code> and <code>reduce</code> functions are a React thing, while they're all ES6 JavaScript features).</p>
<p>Consuming the right amount of information is important. Too little and you won't make progress, too much and you'll get confused and not make progress either.</p>
<h2 id="heading-how-to-know-when-youre-job-ready">How to Know When You're Job Ready</h2>
<p>Short answer is you'll never know. You'll need to try yourself and (probably) fail to see what you still need to get better at.</p>
<p>There's not an exact recipe to get a job. Companies require different skills and have different levels of demand for their candidates.</p>
<p>I'd say a good place to start would be to go through job postings and see what kind of knowledge is required for the types of jobs you like. Once you're more or less comfortable with most of the things they require, I'd say start applying.</p>
<p>Waiting too long to apply for jobs can also hurt you. Even though doing badly at an interview sucks (I know, trust me...), it will really help you realize what knowledge you lack, and in that way accelerate your learning process.</p>
<p>You can <a target="_blank" href="https://www.freecodecamp.org/news/problem-solving-and-technical-interview-prep/">read through this interviewing guide I wrote</a> to help you prepare as much as you're able.</p>
<h2 id="heading-sometimes-not-coding-is-the-best-way-to-learn-about-code">Sometimes Not Coding is the Best Way to Learn About Code</h2>
<p>I feel that when you start out, building things is the best way to learn about programming. It gives you practical knowledge and the feeling of progress (which is key to get over the frustration any learning process involves).</p>
<p>But once you get comfortable with the practical side of things, I think it's also important to get a theoretical foundation. Learning how tools work, how the internet works, how computers work, the history of computer science, algorithms and data structures, and so on. I don't mean becoming an expert, but at least superficial knowledge of these topics is useful.</p>
<p>Regarding how to get this, you can go with videos, articles, books, courses... Again, there're countless resources to pick from.</p>
<p>But something I found really useful is to actually create content. Writing stuff, sharing knowledge, helping others – it all makes you think about code and programming from a different angle and have a deeper understanding of topics.</p>
<p>This is one of the main reasons why I like writing articles. And what I find the most interesting about it is that when I get back to actually coding, I feel that I'm a better programmer than I was before. I guess sometimes not coding is the best way to get good at it.</p>
<h2 id="heading-diversify-your-learning-sources">Diversify Your Learning Sources</h2>
<p>I think a good way to wrap your head around complex topics is hearing different "voices" explain the same thing. Different people will use different analogies, vocabulary and approaches to explain. And eventually you'll find one that works for you.</p>
<p>Same goes to different formats like videos, articles, courses, and so on. Each time you're learning a new thing, try to combine different learning sources together so you can get a good general idea of it.</p>
<h2 id="heading-keep-in-mind-that-nobody-knows-everything">Keep in Mind that Nobody Knows Everything</h2>
<p>Looking from the outside, it may seem that people working in the industry know so much more than you. But they don't know everything.</p>
<p>Senior developers normally have deep knowledge in some particular stack, but they don't know everything about everything, so much less should you if you're just starting out your learning path.</p>
<p>For me, being curious, eager to learn, and consistent in your learning efforts is the most important.</p>
<h2 id="heading-therere-good-and-bad-things-too">There're Good and Bad Things Too</h2>
<p>For me, technology is the best possible environment to work in right now. Jobs are interesting and well paid, and the job market demand for developers is high (and it will probably keep growing in the future).</p>
<p>It's also one of the few sectors in which you can have a good job without a college degree.</p>
<p>I love it, and getting into technology has made a very positive change in my life. But I also think It's important to reflect about some of the negative things around it. For example:</p>
<h4 id="heading-working-remotely-has-challenges">Working remotely has challenges</h4>
<p>Working remotely is great in many senses. For me, it has given me much more control over my time. It has allowed me to save tons of commuting hours and invest those hours into studying, spending more time with my pets and family, or just sleeping more. On the other hand, I recognize it has also separated me a lot from people and society in general which sometimes leads me to feelings of isolation, monotony, and social anxiety.</p>
<h4 id="heading-working-in-tech-can-be-stressful">Working in tech can be stressful</h4>
<p>Working in a project-based environment (which is the most common thing in technology) is awesome. You get to do different things every once in a while, facing different challenges, learning new things and getting the feeling of progress and accomplishment. But on the other hand, the pressure of dealing with deadlines and needing to solve technical problems so things can get done can be hard to deal with, especially at the beginning and on occasions where you don't have help from others.</p>
<h4 id="heading-while-most-people-are-nicesome-really-arent">While most people are nice...some really aren't</h4>
<p>Though most people I've met in tech are nice, curious, and really eager to learn and share knowledge, there're also some egotistic, arrogant, and selfish people too. There're good and bad people in all paths of life.</p>
<h4 id="heading-technology-has-a-huge-impact-on-our-lives">Technology has a huge impact on our lives</h4>
<p>To a bigger or lesser degree, by working in technology we're designing and making decisions that shape an important part of the world's reality and people's lives.</p>
<p>Think about it – technology is everyday becoming more and more intrinsically connected to everything we do as humans. From deciding what or where to eat, to traveling, to meeting new people and building relationships, to buying things, studying, managing money, looking for jobs or something so basic and central like getting to know the world around us. Googling has become the most primary action for most of us when we want to get information about anything.</p>
<p>Technology is absolutely everywhere around us. And as developers, this is great for us because it gives us a huge platform to impact people's lives in a positive way.</p>
<p>But that platform can also impact people's lives in a negative way too. As humans we've become so dependable on technology that decisions made by tech companies and engineers can have the same or more impact on society than those made by politicians.</p>
<p>We're all more addicted to our cellphones than we'd like to admit. Social networks have been used by companies to have a very detailed understanding of our expectations, preferences, fears and emotions. And from that knowledge, get us to buy things we don't need to impress people we don't like (<a target="_blank" href="https://www.youtube.com/watch?v=49FB9hhoO6c">yeah</a>), or even worse, <a target="_blank" href="https://www.youtube.com/watch?v=HVHKYXJq7qo&amp;t=15s">manipulate people's political opinions</a>.</p>
<p>Technology is a very powerful tool, and that tool can be used both for good and for bad. The purpose and impact of it is up to us to decide, both as users and as developers.</p>
<h1 id="heading-wrapping-up">Wrapping up</h1>
<p>Well, I've talked about a lot of things here. I hope some of these concepts helped you picture how it may be to work in the technology industry yourself. Or at least cause you just to think and reflect about a thing or two.</p>
<p>If you read through all of this, I'd love to hear about your feedback or your own story in tech. You can hit me up on <a target="_blank" href="https://www.linkedin.com/in/germancocca/">LinkedIn</a> or <a target="_blank" href="https://twitter.com/CoccaGerman">Twitter</a> if you'd like. 😉</p>
<p>Here's a little <a target="_blank" href="https://www.youtube.com/watch?v=kr2473XpG98">goodbye song for you</a> (I'm making this a thing now 🤷‍♂️). See you in the next one.✌️</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/08/jaja-hahaha.gif" alt="Image" width="600" height="400" loading="lazy"></p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to Choose a Tech Career – A Career Changer's Guide ]]>
                </title>
                <description>
                    <![CDATA[ Choosing a tech career can be tricky because there are many possible paths to choose from. There's Web Development, Machine Learning, Data Science, DevOps, and many more. But the good news is you don't necessarily have to be a developer to be in the ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-choose-a-tech-career/</link>
                <guid isPermaLink="false">66c4c640034a1005e6c59646</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Career Change ]]>
                    </category>
                
                    <category>
                        <![CDATA[ technology ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Web Development ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Sophia Iroegbu ]]>
                </dc:creator>
                <pubDate>Fri, 29 Jul 2022 16:43:31 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/07/Tech-Blog-Cover--3-.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>Choosing a tech career can be tricky because there are many possible paths to choose from. There's Web Development, Machine Learning, Data Science, DevOps, and many more.</p>
<p>But the good news is you don't necessarily have to be a <strong>developer</strong> to be in the world of tech.</p>
<p>This article is a guide for people struggling with the transition to tech. It will explain various careers in tech that you can consider. We'll also discuss how to know whether a particular path suits you or your personality.</p>
<p>This is based on my views and experience, but I hope my insights will prove helpful.</p>
<h2 id="heading-table-of-contents">Table of Contents</h2>
<ul>
<li><p><a class="post-section-overview" href="#heading-what-is-uiux-design">UI/UX Design Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-frontend-development">Frontend Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-backend-development">Backend Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-data-analysis-and-data-science">Data Analysis &amp; Data Science Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-cybersecurity">Cyber security Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-graphic-design">Graphic Design Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-program-management">Program Management Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-human-resources">Human Resources Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-growth-manager">Growth Management Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-business-development">Business Development Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-community-manager">Community Management Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-developer-relations-devrel">Developer Relations Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-technical-writer">Technical Writer Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-quality-assurance-testing">Quality Assurance Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-motion-designer">Motion Designing Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-digital-marketing">Digital Marketing Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-mobile-app-developer">Mobile Development Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-devops">Developer Operations Path</a></p>
</li>
<li><p><a class="post-section-overview" href="#heading-game-development">Game Development Path</a></p>
</li>
</ul>
<h1 id="heading-possible-careers-in-tech">Possible Careers in Tech</h1>
<h2 id="heading-uiux-design">UI/UX Design</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/Whats-the-Difference-Between-them.png" alt="UI/UX Illustration" width="600" height="400" loading="lazy"></p>
<p><em>UI/UX Illustration</em></p>
<p>If you love aesthetics and enjoy styling things, then UI/UX design might be your career.</p>
<h3 id="heading-what-is-uiux-design">What is UI/UX Design?</h3>
<p><strong>UI</strong> stands for User Interface and refers to the screens, pages, and visual icons that users interact with on a webpage or in an app (buttons, icons, and so on). A well-designed UI helps non-techies and all end-users interact with a product or a service online.</p>
<p><strong>UX</strong> stands for User Experience and involves helping a product or service improve its customer's service. A good UX can also help grow followers for the brand.</p>
<p>As a UI/UX developer, your job is to design and build out a user's experience for a brand or company.</p>
<p>A UI/UX developer must know and understand how to use the following:</p>
<ul>
<li><p><a target="_blank" href="https://www.freecodecamp.org/news/designing-a-website-ui-with-prototyping/"><strong>Wireframing</strong></a>: A wireframe is a webpage layout stripped of visual design. You use it to prioritize page elements based on user needs.</p>
</li>
<li><p><a target="_blank" href="https://www.freecodecamp.org/news/designing-a-website-ui-with-prototyping/"><strong>Prototyping</strong></a>: A prototype is a sample or simulation of a final product used to test and gather feedback. Low-fidelity prototypes might be sketched on paper and don't allow user interaction. High-fidelity prototypes are typically computer-based and allow for mouse and keyboard interaction.</p>
</li>
<li><p><strong>Mockup</strong>: A mockup allows designers to get an idea of a realistic visual model of a final webpage or application.</p>
</li>
<li><p><strong>User flow</strong>: A user flow is a way to map out each user's steps when using a product or service. This helps improve the user experience.</p>
</li>
</ul>
<h3 id="heading-what-tools-do-i-need-to-become-a-uiux-developer">What tools do I need to become a UI/UX Developer?</h3>
<p>If you're working as a UI/UX developer, you'll likely use tools like:</p>
<ul>
<li><p><a target="_blank" href="https://www.adobe.com/products/xd.html">Adobe XD</a></p>
</li>
<li><p><a target="_blank" href="https://www.figma.com/">Figma</a></p>
</li>
<li><p><a target="_blank" href="https://www.adobe.com/products/photoshopfamily.html">Photoshop</a></p>
</li>
<li><p><a target="_blank" href="https://www.sketch.com/">Sketch</a></p>
</li>
</ul>
<p>There are lots of tools, but these are the most popular.</p>
<p>A UI/UX developer designs websites and web apps and helps improve user experience with the need-to-knows mentioned above. You can get inspiration from Behance or dribble if you wish to go down this path.</p>
<h3 id="heading-here-are-some-resources-to-help-you-get-started-as-a-uiux-designer">Here are some resources to help you get started as a UI/UX designer:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/jwCmIBJ8Jtc">Figma Tutorial for UI Design - Course for Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/c9Wg6Cb_YlU">UI / UX Design Tutorial – Wireframe, Mockup &amp; Design in Figma</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/I0-vBdh4sZ8">UX Design Tutorial for Beginners</a></p>
</li>
</ul>
<h2 id="heading-frontend-development">Frontend Development</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/frontend-development-tools.png" alt="Frontend Tools Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Frontend Tools Illustration</em></p>
<p>If you love creating websites, you should consider frontend development.</p>
<p>A frontend developer ensures that a visitor can easily interact with a webpage. They use design tools, various frameworks and libraries, and coding to build websites.</p>
<p>Frontend devs are also client-side developers because they directly build the elements on websites and applications with which users and clients interact.</p>
<p>The leading web technologies used by frontend developers are:</p>
<ul>
<li>HTML (HyperText Markup Language):</li>
</ul>
<p><strong>HTML</strong> lets you build the skeleton of webpages and websites. The markup language defines the web. You can think about it as the structure of a house because it holds all the text and defines every header 0n a website.</p>
<ul>
<li>CSS (Cascading Style Sheets):</li>
</ul>
<p><strong>CSS</strong> is responsible for making the website beautiful. You can think of it like the decor of a house. You use it to give your pages color, animations, and more after the HTML has displayed the text.</p>
<ul>
<li>JavaScript:</li>
</ul>
<p><strong>JavaScript</strong> handles the responsiveness of the website. It gives life to a website, helps make it look fabulous on every device, and makes it more interactive.</p>
<p>You will need basic knowledge of these languages to build a unique and interactive website successfully. Knowing only one of the mentioned tech skills won't be enough to build production-quality applications because you will just be able to create a half-useful website.</p>
<p>Sometimes, frontend developers work hand-in-hand with UI/UX developers.</p>
<h3 id="heading-what-tools-do-i-need-to-know-to-become-a-frontend-developer">What tools do I need to know to become a Frontend Developer?</h3>
<h4 id="heading-a-code-editor-or-an-ide-integrated-development-environment">A code editor or an IDE (Integrated Development Environment)</h4>
<p>A code editor/IDE is where you'll write your code, debug it, and preview written code.</p>
<p>There are many editors/IDE to choose from, but the most popular ones are <a target="_blank" href="https://code.visualstudio.com/">Visual Studio Code</a>, <a target="_blank" href="https://atom.io/">Atom</a>, and <a target="_blank" href="https://www.sublimetext.com/">Sublime text editor</a>.</p>
<h4 id="heading-chrome-developer-toolshttpsdeveloperchromecomdocsdevtools"><a target="_blank" href="https://developer.chrome.com/docs/devtools/">Chrome Developer Tools</a></h4>
<p>You use Chrome DevTools to debug real-time applications on Chrome. It gives you an understanding of and access to important internal information of a web application. DevTools also helps you understand how to optimize the loading flow and what the browser is doing now.</p>
<h4 id="heading-git-and-githubhttpsgithubcom-for-version-control"><a target="_blank" href="https://github.com/">Git and GitHub</a> for version control</h4>
<p>I know what you are thinking – <a target="_blank" href="https://www.freecodecamp.org/news/git-and-github-for-beginners/">what is a version control system</a>? It is a system that helps you review your code in stages and keep track of your (and others') revisions. Git is a version control system, and GitHub is an online hosting service for Git repositories.</p>
<p>Say you are working on a landing page, and you messed up the footer, and in the codebase, it seems hard to debug. You can quickly go back to previously committed code on your repository and see your last change(s). Although, you can only see your previous commit when you commit to your repo.</p>
<p>GitHub helps team members work together more efficiently, and you can use it to contribute to open source projects.</p>
<h3 id="heading-here-are-some-resources-to-help-you-get-started-in-frontend-development">Here are some resources to help you get started in Frontend Development:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/NrVf8XEihCA">Frontend Developer Guide for 2022</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/xV7S8BhIeBo">Frontend Development with HTML, CSS, JavaScript</a></p>
</li>
<li><p><a target="_blank" href="https://www.freecodecamp.org/learn/2022/responsive-web-design/">Responsive Web Design Course</a></p>
</li>
</ul>
<h2 id="heading-backend-development">Backend Development</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-276452-1.jpg" alt="Backend Tools Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Backend Tools Illustration</em></p>
<p>If you love working with and building things that depend on you, you should be a backend developer.</p>
<p>A backend developer builds and maintains technologies or software necessary to power client-side development components. They are also called server-side developers.</p>
<p>Their work includes:</p>
<ul>
<li><p>Building/maintaining databases</p>
</li>
<li><p>Working with data and application integration</p>
</li>
<li><p>Working with APIs</p>
</li>
<li><p>Building out the core application logic</p>
</li>
</ul>
<h3 id="heading-what-tools-do-i-need-to-become-a-backend-developer">What tools do I need to become a Backend developer?</h3>
<p>Backend devs use almost the same tools as Frontend developers. Here's what you'll find helpful:</p>
<ul>
<li><p>Code editor/IDE: This is used for writing code, debugging, and previewing codebases.</p>
</li>
<li><p><a target="_blank" href="https://developer.chrome.com/docs/devtools/">Chrome developer tools</a>: This helps you debug your code.</p>
</li>
<li><p><a target="_blank" href="https://github.com/">Git and GitHub</a>: This helps you review your code in stages and makes team-building, collaboration, and open source contributing easier. Any developer can contribute to your project if the repository is public.</p>
</li>
<li><p>SQL or NoSQL server: SQL stands for Structured Query Language. This helps you query databases and interact with them while building an application.</p>
</li>
<li><p>Knowledge of a database</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-help-you-get-started-in-backend-development">Here are some resources to help you get started in Backend Development:</h3>
<ul>
<li><p><a target="_blank" href="https://www.freecodecamp.org/learn/back-end-development-and-apis/">Backend Development and APIs certification</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/Q0prVO3DCtU">Backend Roadmap</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/hHLmb3OD7Mo">Back-end Development and APIs - FreeCodeCamp Tutorial</a></p>
</li>
</ul>
<h2 id="heading-data-analysis-and-data-science">Data Analysis and Data Science</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-265087.jpg" alt="Data Science/Analysis Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Data Science/Analysis Skills Illustration</em></p>
<p>Consider a data analyst career if you love calculating, mathematics, or statistics.</p>
<p>Data analysis involves examining, transforming, and arranging a given data set in specific ways to study its parts and extract useful information. It deals with interpreting, analyzing, and visualizing data.</p>
<p>In layperson's terms, data analysis involves gathering insights from data to aid business decisions.</p>
<p>Data science handles data using machine learning, algorithms, and statistics. It is the statistical part of the data field. Data scientists collect, clean, and interpret data sets for surveys. So data science involves statistically analyzing data.</p>
<p>It's always better to start as a data analyst and then transition to data science because data analysis is the foundation of data science. Although they may be on the same path, there is a fine line between data science and data analysis.</p>
<p>Data is present in every industry, so data scientists and analysts are needed everywhere.</p>
<h4 id="heading-essential-technical-skills-to-have-for-data-science">Essential technical skills to have for Data Science:</h4>
<ul>
<li><p><a target="_blank" href="https://www.mysql.com/">MySQL</a></p>
</li>
<li><p><a target="_blank" href="https://www.python.org/">Python programming language</a></p>
</li>
<li><p>Mathematics</p>
</li>
<li><p>Statistics</p>
</li>
<li><p><a target="_blank" href="https://www.r-project.org/about.html">R programming language</a></p>
</li>
</ul>
<h3 id="heading-what-tools-you-would-use-in-this-field">What tools you would use in this field:</h3>
<ul>
<li><p><a target="_blank" href="https://www.microsoft.com/en-us/microsoft-365/excel">Microsoft Excel</a></p>
</li>
<li><p><a target="_blank" href="https://www.google.com/sheets/about/">Google Spreadsheets</a></p>
</li>
<li><p><a target="_blank" href="https://www.tableau.com/">Tableau</a></p>
</li>
<li><p><a target="_blank" href="https://www.sqlservertutorial.net/getting-started/what-is-sql-server/">SQL Server</a></p>
</li>
<li><p><a target="_blank" href="https://powerbi.microsoft.com/en/">PowerBI</a></p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-help-you-get-started-in-data-analysis-and-data-science">Here are some resources to help you get started in Data Analysis and Data Science:</h3>
<ul>
<li><p><a target="_blank" href="https://docs.microsoft.com/en-us/learn/modules/data-analytics-microsoft/">Discover Data Analysis</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/ua-CiDNNj30">Data Science For Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://www.freecodecamp.org/learn/data-analysis-with-python/">Data Analysis certification</a></p>
</li>
</ul>
<h2 id="heading-product-management">Product Management</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-416405.jpeg" alt="Product Management Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Product Management Skills Illustration</em></p>
<p>This is for you if you are great at organizing products and teams.</p>
<p>A product manager manages and coordinates product development projects. The product manager is the voice of the customer on the team.</p>
<p>They ensure that the product being built contains the features and requirements needed to satisfy the customer. They're also in charge of drafting out a roadmap for that product, from imagination, all the way to launch. And they are the ones who decide what feature to include in v1 or V2.</p>
<p>Their responsibilities include:</p>
<ul>
<li><p>Understanding user needs,</p>
</li>
<li><p>Drafting out roadmaps for the product being built.</p>
</li>
<li><p>Defining a vision for the products</p>
</li>
<li><p>Developing competitive analyses</p>
</li>
<li><p>Prioritizing product features</p>
</li>
</ul>
<p>And lots more.</p>
<h3 id="heading-common-tools-product-managers-use">Common tools product managers use:</h3>
<ul>
<li><p>There are many tools for user tracking and analysis such as <a target="_blank" href="https://www.pendo.io/">Pendo</a> or <a target="_blank" href="https://amplitude.com/">Amplitude</a>. These apps give insight into users' activity on the software or website.</p>
</li>
<li><p><a target="_blank" href="https://www.productplan.com/">Product Plan</a> is a road mapping software to draft out and manage the product plan. They can also handle version-control issues that can slow your product's progress.</p>
</li>
<li><p>Survey Tools such as <a target="_blank" href="https://www.typeform.com/surveys/">Typeform</a> are very handy. PMs use them to carry out customer or user surveys to help improve the product to users' needs. A product manager can easily track and analyze the results using these tools.</p>
</li>
<li><p>Feature flagging tools such as <a target="_blank" href="https://www.split.io/">Split.io</a> help teams quickly turn specific features when users have flagged them. This is useful during a notable feature or product launch or testing process.</p>
</li>
<li><p>Flowcharting tools such as <a target="_blank" href="https://www.microsoft.com/en-us/microsoft-365/visio/flowchart-software">Visio</a> help create product development workflow and help the product manager structure the user journey on the product.</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-in-product-management">Here are some resources to get started in Product Management:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/lF70OuNWdrM">Product Management Fundamentals</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/ravLfnYuqmA">Introduction to Product Management</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/NsqyFcycBTw">Product Management Tutorial for Beginners</a></p>
</li>
</ul>
<h2 id="heading-cybersecurity">Cybersecurity</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-5380664.jpeg" alt="Cyber Security Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Cyber Security Skills Illustration</em></p>
<p>If you are passionate about security, consider a career in cybersecurity.</p>
<p>Cybersecurity involves everything from encryption to finding and protecting against malware or viruses to hacking to find security vulnerabilities in a system so they can be fixed.</p>
<p>A cybersecurity specialist protects digital information for individuals, companies, firms, and the government.</p>
<p>Their tasks include:</p>
<ul>
<li><p>Testing, analyzing, and implementing security system developments</p>
</li>
<li><p>Managing system vulnerabilities</p>
</li>
<li><p>Responding to security threats and attacks</p>
</li>
<li><p>Developing threat prevention strategies</p>
</li>
<li><p>Reporting directly to administrators and executives</p>
</li>
</ul>
<h3 id="heading-tools-cyber-security-analysts-use">Tools cyber security analysts use:</h3>
<ul>
<li><p>Network security monitoring tools such as <a target="_blank" href="https://www.splunk.com/">Splunk</a> or <a target="_blank" href="https://argus-sec.com/">Argus</a>. These tools keep track of network threats and analyze network data.</p>
</li>
<li><p>Encryption tools such as <a target="_blank" href="https://www.veracrypt.fr/code/VeraCrypt/">VeraCrypt</a> and <a target="_blank" href="http://truecrypt.sourceforge.net/">TrueCrypt</a>. These tools are used for encryption by scrambling plain text to code that is not accessible to unauthorized users.</p>
</li>
<li><p>Vulnerability scanners such as <a target="_blank" href="https://cirt.net/Nikto2">Nikto</a> and <a target="_blank" href="https://portswigger.net/burp">Burp Suite</a>. These tools scan software to identify security vulnerabilities using <a target="_blank" href="https://www.freecodecamp.org/news/what-is-sql-injection-how-to-prevent-it/">SQL Injection</a> and cross-site scripting.</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-in-cyber-security">Here are some resources to get started in Cyber Security:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/3Kq1MIfTWCE">Complete Ethical Hacking Course - Network Penetration Testing for Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/U_P23SqJaDc">Cyber Security Full Course for Beginner</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=nzZkKoREEGo&amp;list=PL9ooVrP1hQOGPQVeapGsJCktzIO4DtI4_">Cyber Security Training Course</a></p>
</li>
</ul>
<h2 id="heading-graphic-design">Graphic Design</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-196644.jpg" alt="Graphic Design Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Graphic Design Skills Illustration</em></p>
<p>If you love designing flyers, logos, and other graphic elements, consider a career in graphic design. Many people will argue that graphic design is not a technical career, but it is because it helps bring ideas to life, like UI/UX designing.</p>
<p>A graphic designer is in charge of digitally beautifying a company's brand, assembling images that tell consumers about the brand, and creating motion graphics for a brand.</p>
<h3 id="heading-graphic-design-as-a-tech-career-involves">Graphic design as a tech career involves:</h3>
<ul>
<li><p>Creating layouts</p>
</li>
<li><p>Digital editing</p>
</li>
<li><p>Typesetting</p>
</li>
<li><p>Presenting design products</p>
</li>
</ul>
<h3 id="heading-some-graphic-designer-tools-you-should-know">Some Graphic Designer tools you should know:</h3>
<ul>
<li><p><a target="_blank" href="https://www.adobe.com/products/illustrator.html">Adobe Illustrator</a></p>
</li>
<li><p><a target="_blank" href="https://procreate.art/">Procreate</a></p>
</li>
<li><p><a target="_blank" href="https://www.adobe.com/products/photoshop.html">Adobe Photoshop</a></p>
</li>
<li><p><a target="_blank" href="https://affinity.serif.com/en-us/photo/">Affinity</a></p>
</li>
<li><p><a target="_blank" href="https://www.canva.com/">Canva</a></p>
</li>
</ul>
<p>These tools will help you get the most out of your designs, and they're used by designers all over the world.</p>
<h3 id="heading-here-are-some-resources-to-get-started-in-graphic-design">Here are some resources to get started in Graphic Design:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/9QTCvayLhCA">Graphic Design Tutorial For Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/IyR_uYsRdPs">Photoshop for Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=pz-lwONtVmM&amp;list=PLlz0muypSBNZ02BPF227DXRGBsK5QjcUV">Graphic Design Crash Course</a></p>
</li>
</ul>
<h2 id="heading-program-management">Program Management</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-8190804.jpeg" alt="Program Management Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Program Management Skills Illustration</em></p>
<p>If you love creating and managing structures, consider being a program manager.</p>
<p>A program manager oversees the fulfillment of company goals. They manage the practical programs and coordinate activities between multiple projects without executing them. They also focus on implementing programs, program strategies, and delegating tasks.</p>
<p>They are involved in:</p>
<ul>
<li><p>Sales process</p>
</li>
<li><p>Employee training</p>
</li>
<li><p>Creating marketing plans</p>
</li>
<li><p>Opening new facilities</p>
</li>
<li><p>Product launches</p>
</li>
</ul>
<h3 id="heading-tools-used-in-program-management">Tools used in Program Management:</h3>
<ul>
<li>Agile tools such as <a target="_blank" href="https://trello.com/">Trello</a> and <a target="_blank" href="https://www.atlassian.com/software/jira">Jira</a>.</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-as-a-project-manager">Here are some resources to get started as a Project Manager:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/CESfWcOO_fs">Program Management Standard Summary &amp; Introduction to PgMP</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/dPrvOWRI5WQ">Everything About PgMP (Program Management Professional)</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/RiZRA08KMWA">Overview of Program Manager</a></p>
</li>
</ul>
<h2 id="heading-human-resources">Human Resources</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-5989935.jpeg" alt="Human Resources Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Human Resources Skills Illustration</em></p>
<p>If you are good with people and enjoy helping them resolve conflicts and issues, you might consider becoming an HR specialist. <strong>HR</strong> stands for Human Resources.</p>
<p>Human resources management is recruiting talents and developing a solid company's workforce. The HR department identifies skills or human resources in a company, evaluates potential candidates, and hires talent. They are also in charge of advertising a position for a company.</p>
<p>An HR specialist screens, recruits, interviews, and places new employees.</p>
<h3 id="heading-other-hr-responsibilities-include">Other HR responsibilities include:</h3>
<ul>
<li><p>Handling employee relations</p>
</li>
<li><p>Handling payroll</p>
</li>
<li><p>Managing benefits and training for employees</p>
</li>
<li><p>Consulting with executives on strategic planning</p>
</li>
</ul>
<h3 id="heading-tools-and-techniques-used-by-hr-personnel">Tools and techniques used by HR Personnel:</h3>
<ul>
<li><p><a target="_blank" href="https://www.selectsoftwarereviews.com/buyer-guide/programmatic-job-advertising-software">Programmatic Job Advertising Tools</a></p>
</li>
<li><p><a target="_blank" href="https://geekflare.com/pre-employment-assessment-tools/">Pre-employment Assessment Tools</a></p>
</li>
<li><p><a target="_blank" href="https://peoplemanagingpeople.com/tools/talent-management-system/">Talent Management Solutions</a></p>
</li>
<li><p><a target="_blank" href="https://www.wrike.com/project-management-guide/faq/what-is-expert-judgment-in-project-management/#:~:text=Expert%20judgment%20is%20a%20technique,knowledge%20of%20the%20product%2Fmarket.">Expert Judgement</a></p>
</li>
<li><p>Networking - they use a platform like <a target="_blank" href="https://www.freecodecamp.org/news/p/ead99504-cbb6-4218-bb71-9ecc48fc291a/linkedin.com">LinkedIn</a> to reach out to talents.</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-with-human-resources">Here are some resources to get started with Human Resources:</h3>
<ul>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=A2HFusWQIeE&amp;list=PLdinyWzDfipPVYqpTc8EhWNDvEx14Nc1E">HR Basics</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/hhIVo27PaQg">Complete HR Generalist Tutorial for Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=w_wIMveGlrI&amp;list=PLPjSqITyvDeXSqZIgYD2XKKLGZtjrhDtl">Principles of Human Resources</a></p>
</li>
</ul>
<h2 id="heading-growth-manager">Growth Manager</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/7-Ways-to-Increase-Sales-Using-SEO-blog.jpg" alt="Growth Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Growth Skills Illustration</em></p>
<p>If you are passionate about making things better or bigger, a career as a growth manager might be for you.</p>
<p>A growth manager handles the execution of growth strategy for a business's product to direct consumers. Also, they coordinate initiatives with key financial partners.</p>
<p>Growth managers handle the company's financial growth from sales and marketing to networking and business stakeholder management to people management and work with almost every department. They set goals for workers of every department.</p>
<h3 id="heading-tools-used-in-growth-management">Tools used in Growth Management:</h3>
<ul>
<li><p>Expand</p>
</li>
<li><p><a target="_blank" href="https://zapier.com/">Zapier</a></p>
</li>
<li><p><a target="_blank" href="https://www.growthbarseo.com/">GrowthBar</a></p>
</li>
<li><p>Colibri</p>
</li>
<li><p><a target="_blank" href="https://www.airtable.com/">Airtable</a></p>
</li>
</ul>
<p>These tools are all used to track the activity growth in a company or a product.</p>
<h3 id="heading-how-to-get-started-as-a-growth-manager">How to get started as a Growth Manager:</h3>
<ul>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=JnD_m10cjo0">Growth Manager course</a></p>
</li>
<li><p><a target="_blank" href="https://www.classcentral.com/course/youtube-growth-hacking-for-beginners-53179">Growth Hacking for Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://www.hubspot.com/resources/courses/growth-marketing">Growth Management courses</a></p>
</li>
</ul>
<h2 id="heading-business-development">Business Development</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/Business-Development-Words.jpg" alt="Business Developer Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Business Developer Skills Illustration</em></p>
<p>This career is for you if you are great at building relationships and are 100% business-oriented.</p>
<p>A business developer or business development analyst is in charge of helping organizations gain better brand recognition and financial growth.</p>
<p>They bring up ideas, initiatives, and activities that help improve a business, including increasing revenues, growth terms of business expansion, and profitability by building strategic partnerships and making decisions for business strategy.</p>
<h3 id="heading-other-business-development-job-responsibilities-include">Other business development job responsibilities include:</h3>
<ul>
<li><p>Coordinating events with company executives</p>
</li>
<li><p>Reviewing current market trends</p>
</li>
<li><p>Proposing new business ideas to improve revenue</p>
</li>
<li><p>Building relationships with potential partners</p>
</li>
</ul>
<p>At a large tech company, a business developer works with the non-technical teams and the CEO or board to help grow the business.</p>
<h3 id="heading-tools-used-for-business-development">Tools used for business development:</h3>
<ul>
<li><p>Social Management Tools</p>
</li>
<li><p>Email Lists</p>
</li>
<li><p><a target="_blank" href="https://www.pcmag.com/picks/the-best-crm-software">Customer Relationship Software (CRM)</a></p>
</li>
<li><p>Project Management Tools such as <a target="_blank" href="https://www.atlassian.com/software/jira">Jira</a> or <a target="_blank" href="https://www.accelo.com/">Accelo</a></p>
</li>
<li><p>SEO (Search Engine Optimization) Tools</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-with-business-development">Here are some resources to get started with Business Development:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/f9DzS6NdgwU">Business Analyst Full Course In 2 Hours</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/b3NNk7G658k">Business Development Course</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=_Dcmk9mEP9s">Business Analytics Course</a></p>
</li>
</ul>
<h2 id="heading-community-manager">Community Manager</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/community-manager--1-.jpg" alt="Community Manager Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Community Manager Skills Illustration</em></p>
<p>If you are good with people, can drive conversations in a group, and are good at motivating people, this is for you. Every tech community needs a community manager, and if you are great at communicating with people, this is definitely for you!</p>
<p>A community manager handles communication and serves as the face of the company. They act as the voice, face, and tone of the community. Also, they are responsible for the digital engagement to build the community's presence and trust online and in person. They are the liaison between the community and its users.</p>
<h3 id="heading-community-managers-are-involved-in">Community managers are involved in:</h3>
<ul>
<li><p>Communication</p>
</li>
<li><p>PR (Public Relations)</p>
</li>
<li><p>Social media management</p>
</li>
<li><p>Events</p>
</li>
<li><p>Content creation</p>
</li>
</ul>
<h3 id="heading-tools-used-in-community-management">Tools used in Community Management:</h3>
<ul>
<li><p><a target="_blank" href="https://www.notion.so/">Notion</a></p>
</li>
<li><p><a target="_blank" href="https://trello.com/en">Trello</a></p>
</li>
<li><p><a target="_blank" href="https://www.ahoyconnect.com/">AhoyConnect</a></p>
</li>
<li><p><a target="_blank" href="https://orbitapp.io/">Orbit</a></p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-with-community-management">Here are some resources to get started with Community Management:</h3>
<ul>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=NmdKaNAX0uo&amp;list=PL0P8AylSU5frSxUCe-Pxq9Cq8awvvIqeO">Community Management Masterclass</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/a7U0YWIpHCM">Community Management course for an engaging an audience</a></p>
</li>
<li><p><a target="_blank" href="https://www.facebookblueprint.com/student/path/205897-facebook-community-manager-online-courses">Meta Community Manager Online Courses</a></p>
</li>
</ul>
<h2 id="heading-developer-relations-devrel">Developer Relations (DevRel)</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/pexels-photo-1181263.png" alt="Devrel Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Devrel Illustration</em></p>
<p>If you love marketing, DevRel is a career path for you.</p>
<p>Developer Relations has job responsibilities similar to a Community Manager, Tech Author, Developer Evangelist, Developer Advocate, and sometimes even Growth Hackers and Marketers.</p>
<p>Their prime responsibility revolves around building a positive relationship with the developers on their team. They work between product, engineering, and marketing teams.</p>
<h3 id="heading-to-work-in-the-devrel-tech-space-youll-need-to">To work in the DevRel tech space, you'll need to:</h3>
<ul>
<li><p>Be part of a community</p>
</li>
<li><p>Build a presence in the community</p>
</li>
<li><p>Learn how to interact with the community members</p>
</li>
<li><p>Create content such as blog posts, articles, or videos</p>
</li>
</ul>
<p>There are no specific tools developer advocates use because their roles are similar to other fields, so I will mention some essential tools:</p>
<ul>
<li><p><a target="_blank" href="https://www.notion.so/">Notion</a></p>
</li>
<li><p><a target="_blank" href="https://trello.com/en">Trello</a></p>
</li>
<li><p>Code editor - because they often code as well.</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-in-developer-relations">Here are some resources to get started in Developer Relations:</h3>
<ul>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=LKvkd7m2wBY">Intro to DevRel</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=CN4Zzdg49VI">A complete guide to DevRel</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=rO3WTfPIM5M">Prototyping your career in Developer Relations</a></p>
</li>
</ul>
<h2 id="heading-technical-writer">Technical Writer</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/5-intro.jpg" alt="Tech Writer Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Tech Writer Skills Illustration</em></p>
<p>This is the best fit for you if you love writing and sharing your knowledge about various tech-related topics.</p>
<p>A technical writer generates innovative ideas for content (or works on assignments) while working as a team. They research products, services, technologies, and concepts and document/explain them clearly and concisely so anyone reading can understand how the product or tool works. A technical skill such as programming is needed to excel in this field.</p>
<h3 id="heading-job-responsibilities-of-a-technical-writer-include">Job responsibilities of a technical writer include:</h3>
<ul>
<li><p>Generating ideas for content and workflow solutions</p>
</li>
<li><p>Meeting with experts to ensure they appropriately cover and understand specialized topics</p>
</li>
<li><p>Analyzing and explaining information about products, tools, policies, form documentation, and procedures.</p>
</li>
<li><p>Also, they review and edit content developed by other team members.</p>
</li>
</ul>
<h3 id="heading-tools-used-by-technical-writers">Tools used by technical writers:</h3>
<ul>
<li><p>Markdown editors such as <a target="_blank" href="https://stackedit.io/">StackEdit</a>, <a target="_blank" href="https://typora.io/">Typora</a>, <a target="_blank" href="https://dillinger.io/">Dillinger</a>, and <a target="_blank" href="https://ia.net/writer">IA</a>.</p>
</li>
<li><p>API Documentation tools such as <a target="_blank" href="https://bump.sh/">Bump</a>, <a target="_blank" href="https://redocly.com/">Redocly</a>, <a target="_blank" href="https://www.postman.com/api-documentation-tool/">Postman</a>, and <a target="_blank" href="https://www.gitbook.com/">GitBook</a>.</p>
</li>
<li><p>Publishing Tools such as <a target="_blank" href="https://document360.com/">Document360</a> and <a target="_blank" href="https://www.adobe.com/products/robohelp.html">Adobe Robohelp</a>.</p>
</li>
<li><p>Editing tools include <a target="_blank" href="https://www.grammarly.com/">Grammarly</a>, <a target="_blank" href="https://www.copy.ai/">Copy.Ai</a>, <a target="_blank" href="https://acrobat.adobe.com/us/en/acrobat.html">Adobe Acrobat</a>, <a target="_blank" href="https://www.dropbox.com/">Dropbox</a>, <a target="_blank" href="https://docs.google.com/">Google Docs</a>, and <a target="_blank" href="https://evernote.com/">Evernote</a>.</p>
</li>
<li><p>Media management tools such as <a target="_blank" href="https://www.snipaste.com/">Snipaste</a>, <a target="_blank" href="https://www.loom.com/">Loom</a>, and <a target="_blank" href="https://www.techsmith.com/video-editor.html">Camtasia</a>.</p>
</li>
</ul>
<p>Note that different organizations use different tools, but those mentioned above are the most common tools for each category.</p>
<h3 id="heading-here-are-some-resources-to-get-started-with-technical-writing">Here are some resources to get started with Technical Writing:</h3>
<ul>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=LTDsgd0ytbE&amp;list=PL9RLbEIB-lv-bRTz14iEK4YSxRzxLQfdx">Technical Writing Course</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=pMXLm18lFks">Tech Writing Workshop</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=biocrCx5T_k&amp;list=PLoynTxuTLXaDtAmzbqdsc7JZMWcIt3nnP">A guide to Technical Writing</a></p>
</li>
<li><p><a target="_blank" href="https://www.freecodecamp.org/news/technical-writing-for-beginners/">Technical Writing for Beginners</a></p>
</li>
</ul>
<h2 id="heading-quality-assurance-testing">Quality Assurance Testing</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/quality-assurance-1.png" alt="QA Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>QA Skills Illustration</em></p>
<p>If you love writing and testing code, this is for you.</p>
<p>Quality Assurance (QA) testers are critical in delivering consumers high-quality, functioning software and web applications. They test and evaluate new and existing programs and help identify and remove bugs, glitches, and other user experience issues.</p>
<h3 id="heading-tools-qa-testers-use">Tools QA Testers use:</h3>
<ul>
<li><p><a target="_blank" href="https://testrigor.com/">TestRigor</a></p>
</li>
<li><p><a target="_blank" href="https://www.testim.io/">Testim</a></p>
</li>
<li><p><a target="_blank" href="https://www.kobiton.com/">Kobiton</a></p>
</li>
<li><p><a target="_blank" href="https://www.kualitee.com/">Kualitee</a></p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-as-a-qa-tester">Here are some resources to get started as a QA Tester:</h3>
<ul>
<li><p><a target="_blank" href="https://www.freecodecamp.org/learn/quality-assurance/">Quality Assurance Certification</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/sO8eGL6SFsA">Software Testing Full Course</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=QJqNYhiHysM">QA Manual Testing Course</a></p>
</li>
</ul>
<h2 id="heading-motion-designer">Motion Designer</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/istockphoto-1190673226-612x612.jpg" alt="Motion Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Motion Skills Illustration</em></p>
<p>If you love CGI, this is for you.</p>
<p>A motion designer creates artwork for the web, television, and films, which include movie clips, trailers, commercials, and so on.</p>
<p>They use special effects called visual effects, animation, and other cinematic techniques to bring life to their created works.</p>
<h3 id="heading-tools-used-in-motion-designing">Tools used in motion designing:</h3>
<ul>
<li><p><a target="_blank" href="https://www.adobe.com/africa/products/aftereffects.html">Adobe After Effects</a></p>
</li>
<li><p><a target="_blank" href="https://www.blender.org/">3D Blender</a></p>
</li>
<li><p><a target="_blank" href="https://www.maxon.net/en/cinema-4d">Cinema4D</a></p>
</li>
<li><p><a target="_blank" href="https://play.google.com/store/apps/details?id=com.paymaya&amp;hl=en&amp;gl=US">Maya</a></p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-as-a-motion-designer">Here are some resources to get started as a Motion Designer:</h3>
<ul>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=5PNotJrwkYY&amp;list=PLWYr0cX0QTLCzRlSioyNG90GgvblR33j7">Motion Graphics Tutorial</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=ZR2n3Gd-SqU">Intro to Motion Design</a></p>
</li>
<li><p><a target="_blank" href="https://www.skillshare.com/browse/motion-design">Motion Design Courses</a></p>
</li>
</ul>
<h2 id="heading-digital-marketing">Digital Marketing</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/DIGITAL-1.jpg" alt="Digital Marketer Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Digital Marketer Skills Illustration</em></p>
<p>If you love selling products online, this is for you!</p>
<p>A digital marketer helps maintain a brand by working on marketing campaigns. It is online marketing because it promotes brands and connects potential users or consumers to the product through the internet.</p>
<p>Digital marketing is another form of digital communication. This is not limited to email, social media, and web-based advertising but also includes text and multimedia messages as a marketing channel for marketing.</p>
<h3 id="heading-digital-marketers-duties-include">Digital marketers' duties include:</h3>
<ul>
<li><p>Creating content to help marketing campaigns</p>
</li>
<li><p>Doing market research</p>
</li>
<li><p>Strategizing with the marketing team</p>
</li>
</ul>
<h3 id="heading-tools-used-for-digital-marketing">Tools used for digital marketing:</h3>
<ul>
<li><p><a target="_blank" href="https://sproutsocial.com/">Sprout Social</a></p>
</li>
<li><p><a target="_blank" href="https://www.loomly.com/">Loomly</a></p>
</li>
<li><p><a target="_blank" href="https://audiense.com/">Audiense</a></p>
</li>
<li><p><a target="_blank" href="https://sendgrid.com/">SendGrid</a></p>
</li>
<li><p><a target="_blank" href="https://ahrefs.com/">Ahrefs</a></p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-as-a-digital-marketer">Here are some resources to get started as a Digital Marketer:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/rchKaSMQ__8">Digital Marketing Tutorial For Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/hiEb1m7CXH4">Digital Marketing Course in 7 Hours</a></p>
</li>
<li><p><a target="_blank" href="https://www.youtube.com/watch?v=wfOp0lsCXAY&amp;list=PLifnQOsGyOSRMYndHku6pNlLYckbBuOGU">Free Digital Marketing Course</a></p>
</li>
</ul>
<h2 id="heading-mobile-app-developer">Mobile App Developer</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/software-testing.png" alt="Mobile Developer Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Mobile Developer Skills Illustration</em></p>
<p>If you love creating apps, this is for you.</p>
<p>The mobile development tech space is vast, and the tools and technologies you would use would depend on what area you chose to specialize in – Andriod app development and iOS development.</p>
<p>A mobile developer converts code into user-friendly applications. They work with other developers to develop functional mobile applications in a fast-paced environment.</p>
<h3 id="heading-tools-used-for-android-development">Tools used for android development:</h3>
<ul>
<li><p><a target="_blank" href="https://developer.android.com/studio">Android Studio</a></p>
</li>
<li><p><a target="_blank" href="https://www.eclipse.org/downloads/packages/">Eclipse</a></p>
</li>
<li><p><a target="_blank" href="https://instabug.com/">Instabug</a></p>
</li>
</ul>
<h3 id="heading-tools-used-for-ios-development">Tools used for iOS development:</h3>
<ul>
<li><p><a target="_blank" href="https://developer.apple.com/xcode/">Xcode</a> or <a target="_blank" href="https://www.jetbrains.com/objc/">App code</a></p>
</li>
<li><p><a target="_blank" href="https://apps.apple.com/us/app/transporter/id1450874784?mt=12">Transporter</a></p>
</li>
<li><p><a target="_blank" href="https://cocoapods.org/pods/Fabric">Fabric</a></p>
</li>
</ul>
<h3 id="heading-some-key-responsibilities-of-app-developers">Some key responsibilities of app developers:</h3>
<ul>
<li><p>Design the application,</p>
</li>
<li><p>Test the application,</p>
</li>
<li><p>Release the application</p>
</li>
<li><p>Support the application.</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-as-a-mobile-developer">Here are some resources to get started as a mobile developer:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/fis26HvvDII">Android Development for Beginners - Full Course</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/09TeUXjzpKs">iOS Development Tutorial For Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/VPvVD8t02U8">Flutter Course for Beginners</a></p>
</li>
</ul>
<h2 id="heading-devops">DevOps</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/7602.1513404277.png" alt="DevOps Skills Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>DevOps Skills Illustration</em></p>
<p>This is for you if you love working with infrastructure and cloud technologies.</p>
<p>A DevOps engineer works directly with developers and IT staff to supervise the release of code and brainstorm ideas for engineering and coding.</p>
<p>Their responsibilities include:</p>
<ul>
<li><p>Implementing automation tools and frameworks for automatic code deployment,</p>
</li>
<li><p>Quality control and management of the code base,</p>
</li>
<li><p>Designing procedures for system troubleshooting and maintenance and</p>
</li>
<li><p>Writing scripts for service quality analysis, monitoring, and operation.</p>
</li>
</ul>
<h3 id="heading-skills-you-need-as-a-devops-engineer">Skills you need as a DevOps engineer:</h3>
<ul>
<li><p><a target="_blank" href="https://www.linux.org/">Linux</a></p>
</li>
<li><p>Basic knowledge of <a target="_blank" href="https://www.python.org/">Python</a> programming language</p>
</li>
<li><p>Knowledge of cloud platforms.</p>
</li>
</ul>
<h3 id="heading-tools-used-as-a-devops-engineer">Tools used as a DevOps engineer:</h3>
<ul>
<li><p>Build tools such as <a target="_blank" href="https://gradle.org/">Gradle</a> and <a target="_blank" href="https://www.apache.org/">Apache</a>.</p>
</li>
<li><p>Package managers such as <a target="_blank" href="https://www.npmjs.com/">Npm</a> and <a target="_blank" href="https://maven.apache.org/">Mache</a></p>
</li>
<li><p>CI/CD tools such as <a target="_blank" href="https://www.jenkins.io/">Jenkins</a>.</p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-as-a-devops-engineer">Here are some resources to get started as a DevOps engineer:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/hQcFE0RD0cQ">DevOps Tutorial for Beginners</a></p>
</li>
<li><p><a target="_blank" href="https://docs.microsoft.com/en-us/learn/certifications/azure-fundamentals/">Microsoft Certified: Azure Fundamentals</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/j5Zsa_eOXeY">DevOps Engineering Course for Beginners</a></p>
</li>
</ul>
<h2 id="heading-game-development">Game Development</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/07/image-blog-vcs-cross-platform-game-dev.jpg" alt="Game Design Ilustration" width="600" height="400" loading="lazy"></p>
<p><em>Game Design Illustration</em></p>
<p>If you love games, this is a tech path for you.</p>
<p>Game designers translate design ideas into a functional game code. They create web games, mobile games, and iOS games.</p>
<p>Their responsibilities include:</p>
<ul>
<li><p>Coding the base engine of the game,</p>
</li>
<li><p>Generating game scripts and storyboards,</p>
</li>
<li><p>"Polishing" the game, maintaining the code, fixing bugs, and ironing out reoccurring problems</p>
</li>
<li><p>Contributing to audio and animation design, and</p>
</li>
<li><p>Creating game specifications and designing expansion packs.</p>
</li>
</ul>
<h3 id="heading-tools-used-as-a-game-developer">Tools used as a game developer:</h3>
<ul>
<li><p><a target="_blank" href="https://blog.sagipl.com/game-development-tools/#GameFroot">GameFroot</a></p>
</li>
<li><p><a target="_blank" href="https://blog.sagipl.com/game-development-tools/#Flowlab">Flowlab</a></p>
</li>
<li><p><a target="_blank" href="https://blog.sagipl.com/game-development-tools/#Sploder">Splender</a></p>
</li>
<li><p><a target="_blank" href="https://blog.sagipl.com/game-development-tools/#Construct_2">Construct</a></p>
</li>
</ul>
<h3 id="heading-here-are-some-resources-to-get-started-in-game-development">Here are some resources to get started in game development:</h3>
<ul>
<li><p><a target="_blank" href="https://youtu.be/gB1F9G0JXOo">Learn Unity - Beginner's Game Development Tutorial</a></p>
</li>
<li><p><a target="_blank" href="https://youtu.be/G8AT01tuyrk">Basic Principles of Game Design</a></p>
</li>
<li><p><a target="_blank" href="https://www.udemy.com/course/introduction-to-game-development-with-unity/">Introduction to Game Development with Unity</a></p>
</li>
</ul>
<h2 id="heading-conclusion">Conclusion</h2>
<p>Now that you have different options to get started in the world of tech, I hope you become less confused.</p>
<p>Choose a path and get started – the tech space is vast, so roles are constantly opening up. Don't fret because learning can be challenging. And remember – even senior techies suffer imposter syndrome.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Coding Interview Prep for Big Tech (FAANG) – And How I Became A Google Engineer ]]>
                </title>
                <description>
                    <![CDATA[ When I changed careers from lawyer to software engineer at Google, I published 10 big ideas that helped me make that massive transition. Since then I’ve had a ton of questions from people asking me questions about: How I taught myself new skills Ho... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/coding-interview-prep-for-big-tech/</link>
                <guid isPermaLink="false">66d461c933b83c4378a51861</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Career Change ]]>
                    </category>
                
                    <category>
                        <![CDATA[ coding interview ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Interview tips ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Zubin Pratap ]]>
                </dc:creator>
                <pubDate>Wed, 13 Jul 2022 14:45:30 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/07/Google-Mel.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>When I changed careers from lawyer to software engineer at Google, I published <a target="_blank" href="https://www.freecodecamp.org/news/from-lawyer-to-google-engineer/">10 big ideas that helped me</a> make that massive transition. Since then I’ve had a ton of questions from people asking me questions about:</p>
<ul>
<li><p>How I taught myself new skills</p>
</li>
<li><p>How did I know that learning to code at 37 was not “too late”</p>
</li>
<li><p>How I prepared for big tech coding interviews</p>
</li>
<li><p>How I analyzed and minimized the risk of career change</p>
</li>
<li><p>How I worked out that software engineering was “right” for me</p>
</li>
<li><p>What languages I focused on</p>
</li>
<li><p>Whether being a FANG/FAMGA software engineer is right for everybody (hint: tempting to think so but I saw plenty of evidence of it not being right for some people’s goals)</p>
</li>
</ul>
<p>Note: I think “FAANG/FAMGA” is limiting, and prefer to refer to “big tech”since there are many highly prestigious companies other than the usual 4-5 everyone obsesses about.</p>
<h2 id="heading-why-i-wrote-this-article">Why I Wrote This Article</h2>
<p>Each of those questions I listed above deserve their own article, even though I know our contemporary culture prefers “tweet-sized tips”. However, meaningful skills can’t be internalized from a few hundred characters.</p>
<p>So today I am going to share with you my answer to one of those questions – the approach I adopted when:</p>
<ol>
<li><p>I made that first jump in careers from lawyer to coder at 38, and</p>
</li>
<li><p>How I prepared for big tech interviews at the ripe ol’ age of 39, with less than 2 years of coding behind me.</p>
</li>
</ol>
<p>If you want me to write on any of the other questions I always get, please let me know! I’m going to put my contact details in this post somewhere, and the only way to find it will be to go through the article. 😊 That is also to encourage you to carefully read this article rather than skimming for a “quick tip”.</p>
<h2 id="heading-uncovering-the-real-goal">Uncovering the Real Goal</h2>
<p>I hold the following opinions: getting coding interviews is harder than learning to code. Doing well at the interviews is often just as hard as getting the interviews. Behavioral interviews are hard if you don’t have solid experience – but your competition does.</p>
<p>When I made the switch I had zero coding background. Later, when I set my sights on Big Tech, I knew I’d be competing with PhDs, people who’d been coding since their teens (often 20+ years), and folks who'd achieved a lot more technically than I had in my one brief year’s experience as a developer.</p>
<p>And I had the added challenge of applying for big tech from outside the United States.</p>
<p>So I had to develop a plan that went well beyond just “learning to code”.</p>
<p>First, let me explain why I concluded that “learning to code” is the easy part, even though I’d tried and failed to learn to code 4 times, between 2012 and 2018.</p>
<p>This insight came to me in late 2018, when my startup was struggling. I had lost tens of thousands of dollars building my startup. I had no income for over 2 years.</p>
<p>And I decided to pull out over $40K from my mortgage. Why? I got into a top-rated bootcamp in San Francisco.</p>
<p>I left my family behind, and relocated to the US. I was meant to be there for over 14 weeks, but I withdrew from this top-rated bootcamp in week 1, and returned to Australia.</p>
<p>I had been super excited about the adventure (and scared from all the debt). But I developed grave doubts about the bootcamp strategy. I noticed that my instructors and the program were designed to help people "learn to code" rather than "becoming a coder".</p>
<p>From my experience on the hiring side in 3 other industries and 4 countries, I knew this was a mistake.</p>
<p>Learning to code is just a form of “literacy”. And literacy is not skill.</p>
<p>I was living proof: each of the 4 times I focused on “learning to code” I succeeded in a narrow sense. Whether it was HTML or Java or writing a simple Android app from a book, I always succeeded at learning how to read and write the basics. But I had no idea how to actually build anything useful. I was completely hopeless at applying my knowledge – I had no real “skill”.</p>
<p>In this century we don't get hired for what we know. We get hired for skill.</p>
<p>I quickly saw several reasons why a coding bootcamp was the wrong strategy for me.</p>
<p>This expensive bootcamp would likely give me some basic skills, the kind that may even get me an “entry level” job. But I could see things were going to be rushed, standardized, and focused on "getting out the other end".</p>
<p>I didn't want to "tick a box". I wanted skill. Competence. Confidence.</p>
<p>Moreover, bootcamps seemed to prepare everyone for entry level "junior developer" jobs.</p>
<p>I was 37 and I didn’t want to settle for an “entry-level job” mindset. Plus I don't believe anyone with 3 + years of experience is "junior" even if they're a total newbie in the field.</p>
<p>Then I discovered that several instructors and teaching assistants at the bootcamp were former students who hadn’t yet found jobs. They had never changed careers – many had never had a "career" as such. The job-search counselors had never even been on the interviewing side in tech.</p>
<p>How was I going to learn to do something from people who’d never done what I needed to do?</p>
<p>And then there was geography. Students based in San Francisco had advantages, whereas people coming from other parts of the US did not find work that easily and ran out of money in the long months after graduating and before getting their first job. Heck, I was based in Australia...how was this going to work for me?</p>
<p>I looked at my explicit goal. It was not to "learn to code" – it was to build a career that fulfilled me.</p>
<p>Plus, when researching bootcamps, I could see a path to learning “part time”. That seemed like a much more sustainable strategy to me because I could find a job and learn at night and on weekends. After over 2 years of no income, I needed to have cashflow in order to keep fear at bay, and focus on becoming a professional coder.</p>
<p>As the legendary businessman Harvey Firestone said:</p>
<blockquote>
<p><em>“Having a surplus is the greatest aid to business judgment that I know.”</em></p>
</blockquote>
<p>Having income while studying would give me the confidence to make better judgments. Better judgments are important for a career that is fulfilling in the long term.</p>
<p>I had no doubt that I would "learn to code" if I did 3-4 months in the bootcamp.</p>
<p>But would I learn enough for a good team to pay me money for my skills? I no longer believed bootcamps and online coding websites would help me achieve that.</p>
<p>Learning to code would not get me far. I had to be good enough to beat my competitors who had coding degrees, prior experience and networks. I wanted a career in code.</p>
<p>So I left the bootcamp, wrote off about $9,000 and returned to Australia. Sure, I had gained rudimentary coding literacy to pass the entrance test for the bootcamp. But I was very far from competent.</p>
<p>This analysis may be hard to understand if you’re new to the workplace. Another way to truly understand it is to notice that many of us play music, but aren’t in a band. As my mentor said:</p>
<blockquote>
<p><em>"Michael Jordan didn’t want to learn to play basketball. He wanted to be in the NBA. Huge difference."</em></p>
</blockquote>
<h2 id="heading-how-to-use-your-advantages-amp-disadvantages">How to Use Your Advantages &amp; Disadvantages</h2>
<p>That one insight made all the difference. Within 8 months, in 2019, I got all 4 developer jobs I applied for. I simply followed the program I’d developed with the help of my (non-technical!) coach.</p>
<p>Don't be misled though. I had unexpected advantages. I benefited from 2 major advantages that initially appeared to be disadvantages.</p>
<p>This was not my first career change, and for almost a decade, I had been on the hiring side in previous careers. Today I’ve been on the hiring side in engineering too, and the patterns are very similar.</p>
<p>My biggest advantage was that I was no longer thinking about the job market challenge as a candidate. I was thinking about this from the perspective of the hiring manager. That had a significant impact on my plan because I had experience of how hiring managers think – their constraints, priorities, values, business needs, dislikes, red flags...</p>
<p>My experience (age?) helped me understand what impact I could deliver to a team and organization, and to identify the right people that I could learn from, who could help me with ideas, guidance, suggestions and referrals. What was a disadvantage was now an advantage – <a target="_blank" href="https://www.freecodecamp.org/news/why-career-changers-have-an-advantage/">a career changer's advantage</a>.</p>
<p>On the point of advantages, I want to call out something important.</p>
<p>The easiest thing in the world is to dismiss others for having “killer” advantages. It's easy to shrug and say "Of course – that’s why they succeeded". It’s easy to not notice that everyone has very compelling and serious disadvantages.</p>
<p>For me, my “disadvantages” were:</p>
<ul>
<li><p>Geography – I don’t live in the US or one of the other tech hubs</p>
</li>
<li><p>No formal computer science qualifications</p>
</li>
<li><p>Zero technical background</p>
</li>
<li><p>A mortgage and financial responsibilities</p>
</li>
<li><p>My “age” – learning new skills when you’re pushing 40 is harder than when you’re 25</p>
</li>
<li><p>Cultural and social expectations, judgment, negativity</p>
</li>
<li><p>Recruiters and bosses being younger than I was and uncertain of how to deal with me</p>
</li>
<li><p>Compared to other candidates, people viewed my change as very, very “risky”</p>
</li>
<li><p>I was going to earn less in engineering than I would as a lawyer</p>
</li>
</ul>
<p>Every day I hear from people who let any one of these things stop them. While I cannot comment on whether or not they’re real reasons, I <em>can</em> say that if we argue for our limitations, we get to keep them.</p>
<p>Clinging on to our disadvantages does not help us overcome them.</p>
<p>With the help of my coach and a ton of mindset/psychology training, I was able to dig into my disadvantages and convert a few of them (not many!) into major advantages. And that’s when I realized that my experience with how interviewing, recruitment, and resourcing works would help me a lot in formulating a strategy.</p>
<h3 id="heading-priority-one-career-change">Priority one: career change</h3>
<p>When learning to code and intentionally setting the goal of becoming a professional coder, I found that I kept switching to short-term thinking and obsessing about my first role.</p>
<p>I wanted my first role to be glorious, to prove all my critics wrong, to pay me a gazillion dollars and save me from having to deal with self doubt and struggle for the rest of my life.</p>
<p>But I had to train myself to view things differently. My first role must be one that makes me learn and grow, and set me up for future success no matter what happened. It needed to pay fair market rates, but I was happy to take a slightly lower salary if the team was fantastic and the growth/learning was solid. It did <em>not</em> need to be my dream job.</p>
<p>I was very explicit in the tradeoffs I’d make:</p>
<ul>
<li><p>Team matters more than brand</p>
</li>
<li><p>Team matters more than money</p>
</li>
<li><p>Brand matters more than money (as it would set me up for future opportunities)</p>
</li>
<li><p>Money matters more than stock (this was for my first dev role, as this would make my continued learning plan sustainable, even though stock may give me more financial upside)</p>
</li>
<li><p>But, learning mattered more than brand or money – as learning more would save me time which is better than saving me money</p>
</li>
<li><p>I would not trade off between team and learning. I needed both (but I was more likely to get reliable signals on the team than I would on the actual learning/growth I’d get on the job)</p>
</li>
</ul>
<p>“Nailing it” or being comfortable was not a priority. My priority was to successfully change careers.</p>
<p>Accepting a rubbish coding job (and there are plenty of them…) would not be a “successful” career change for me. But equally I didn’t have to get into big tech (ever) for my career change to be “successful”. This was very personal – success to me meant loving the work I do and learning a lot doing it. Period.</p>
<h3 id="heading-how-i-made-a-customized-plan">How I Made a Customized Plan</h3>
<p>After analyzing my advantages and "convertible" disadvantages, the next thing I needed to develop was a customized plan. I needed one that was tailored to me, that I could believe in.</p>
<p>I needed a plan that took into account my specific context, which includes my temperament, experience, beliefs, values, goals and skills.</p>
<p>Note that I’ve still not talked about the technical interviews, the algorithms and data structures, and so on. When developing my plan, I had to focus on all the many pieces that had nothing to do with my coding skills or technical capability.</p>
<p>It would also need to account for my psychological “runway” – how much time was I prepared to invest in this career change, before I’d give up, lose hope, or change my mind? I could not answer that without understanding how long it was going to take me to learn the minimum required skills.</p>
<p>To understand that, I needed to research and analyze what the minimum set of engineering skills that the market would value were.</p>
<p>And to understand that, I needed to analyze the dozens of engineering domains in the market, and which ones would suit my temperament, interest/passion and advantages. And from that analysis I’d need to pick the domains that I would focus on and exclude all others.</p>
<p>I'd have to find the overlap between my interests, my ability and what the market valued.</p>
<p>Again, my experience on the hiring side of the market gave me some (small but important) advantages. I knew that pure technical skill would not be enough – that’s just the starting point. the “invitation to the dance”.</p>
<p>I also knew that good teams don’t just hire for raw technical skill, they hire for essential non-technical attributes as well. What those traits are depend on the technical domain, the team culture, the current composition of the team, and so on.</p>
<p>Yes, you're right. A custom plan is extremely multi-dimensional, and getting things right is only moderately helpful, whereas getting things wrong can result in a giant loss of direction and waste of time.</p>
<p>Since I was almost halfway through my career, I was determined not to repeat past mistakes. I was going to be:</p>
<ul>
<li><p>Highly specific in my goals.</p>
</li>
<li><p>Highly intentional in my choices and actions.</p>
</li>
<li><p>Focused on what I wanted, paying no attention to the things I did not want.</p>
</li>
<li><p>Willing to change myself, my habits and negative beliefs, so that I could change the world around me.</p>
</li>
<li><p>Ready to focus on building a rewarding and fulfilling career rather than just “getting the next job”.</p>
</li>
<li><p>Ready to focus on delivering value for my future team rather than a “what’s in it for me” mindset.</p>
</li>
<li><p>Willing to play the long game – think in 5-10-25 year horizons rather than the next few weeks.</p>
</li>
</ul>
<p>I must confess, doing these things consistently was much harder than I anticipated. I slipped up a lot, especially on the first three. But since I had my custom plan written down, I let that be my guide and the sole source of truth for what I needed to do.</p>
<p>My plan required me to focus on fundamental programming skills, and then narrow it down to the segment that I felt matched my long-term goals and skills. For me, this was web development. This meant completely and ruthlessly avoiding all the “shiny new things” and doing things like Python or Java.</p>
<p>And tutorials and endless videos were not going to make me beat the competition. I calculated that the minimum set of skills I’d need to develop for my city would require 900-1100 hours of focused coding, practicing the right things in the right sequence.</p>
<p>Preparing the plan took several weeks. I kept refining and strengthening it and didn’t rush it artificially. I am very inspired by Abraham Lincoln (another lawyer who changed careers!) and he once said “Give me six hours to chop down a tree and I will spend the first four sharpening the axe”.</p>
<p>I was so tempted to dive right into my plan and get “busy” but I’d learned that being busy was so not the same as being effective. Once the plan felt as complete as it could be with the information I had at my disposal, I turned to executing on that plan, with total focus.</p>
<p>This meant a lot of sacrifice, and many, many days of self doubt, battling the temptation to switch, and learning to manage my energy. I developed some amazing habits during this time, but they were only obvious to me in hindsight. During those 6 months of work, I was constantly assailed by uncertainty, fear and occasional loss of hope.</p>
<p>Later on, I adapted this planning process to create a plan for Big Tech and especially for Google. That plan took another 500-600 hours of intentional study that was completely different from my plan to become a developer. More on that later.</p>
<h2 id="heading-early-results-and-thengoogle-swe">Early Results, and then…Google SWE</h2>
<p>Another lesson I’d learned from 4 years of trial, error, and failure was that I was very likely to change plans midway, switch resources, courses or focus.</p>
<p>This is a much more serious problem than we realize because every time we switch focus or plans we throw out the hard work we’ve done, go back to square 1 and…start…all…over…again.</p>
<p>Imagine if you were driving from A to B and kept taking U-turns and going back and restarting. You’d never get anywhere.</p>
<p>But I’d made myself a promise (it’s easier to keep a single promise than to keep a bunch of them!): I was going to complete my plan and then decide whether I would keep going. This time I wasn’t going to stop until I completed my plan.</p>
<p>I didn’t have to like doing it. I just had to like the possibilities that lay at the end of doing it.</p>
<p>My plan had a specific time when I would start interviewing even if I didn’t feel ready for interviews. But to get to that stage I had to get good at generating interview opportunities.</p>
<p>Again, my past experience in other careers helped me. I applied all my learnings over 18 years and secured 4 interviews within a few weeks, and got all 4 offers even though there were plenty of candidates with more experience, skill, and qualifications than I had.</p>
<p>It wasn’t because I was better at coding. I don’t see how that could be, given that I’d only been in the game for a few months.</p>
<p>I believe I got all 4 offers because <em>during the interview process</em> I demonstrated that I was a better candidate <em>for the hiring manager</em>. This approach was critical in how I presented myself.</p>
<p>Getting the offers is great, but I had an unexpected problem. Since my plan required me to be highly intentional about the kind of work I’d pursue, all 4 roles I’d applied for were the ones I really believed would be a fantastic start to my new career. How was I going to choose?</p>
<p>Yes it’s a great problem to have, but that doesn’t make the decision easy!</p>
<p>To resolve this problem intelligently, I learned to ask myself a very important question:</p>
<blockquote>
<p><em>Do I</em> <strong><em>know</em></strong> <em>this or do I simply</em> <strong><em>think</em></strong> <em>this?</em></p>
</blockquote>
<p>Very often we make decisions based on assumptions and beliefs that are completely untested, and we mistake our opinions or fantasies for reality. What we actually know is way less than what we believe without truly knowing.</p>
<p>Being intentional required me to focus on what I know rather than what I wished, or merely thought. I had to either find evidence to back my thoughts, or disregard thoughts for what I knew.</p>
<p>That framework developed my analytical powers and helped me choose the right first role in early 2019. I turned 39 around that time.</p>
<p>Till today I continue to use this <em>know vs think</em> framework in my personal decision making as well as in my engineering decision making. I find it to be an excellent framework for analyzing tradeoffs in complex decisions.</p>
<p>Looking back, I learned a TON about sticking to my plan, revisiting my goals, self-awareness and practicing being <em>intentional</em>.</p>
<p>A few months into my new role, I noticed that a lot of lawyers were starting to reach out and ask me how I did this. Curiously, many of them were people who insisted I was making a huge mistake and that wanting to learn to code at this stage was immature and foolhardy.</p>
<p>Now they wanted to “learn to code”. And that made me think.</p>
<p>What else have others said is “not possible”? <em>Do they</em> <strong><em>know</em></strong> <em>that or do they just</em> <strong><em>think</em></strong> <em>that</em>?</p>
<p>And my goals hadn’t changed. For me learning, growth, and team were still more important than brand or money. But I was almost 40 and I also wanted to explore life in a way that I’d never had the courage to do in the first half of my career.</p>
<p>So I decided to set myself a stretch goal: I was going to find out what being a software engineer at Big Tech was like. I’d worked in huge companies before and I knew that it isn’t for everyone – that’s the reason I went into startup and smaller companies in the first place.</p>
<p>But wouldn’t I learn and grow SO much by being surrounded by some of the “best” people in their field, from engineering to product and sales? Did I know this? Or did I just think it?</p>
<p>I did the research and found that on average people were happy in Big Tech. But I also found that most people were not as intentional as I was. So I confined my research to people who were very intentional about their careers. And they (almost universally) said they grew a lot from Big Tech, even if they decided to leave. Leaving Big Tech was also intentional, in pursuit of their end goals.</p>
<p>So I decided to try for big tech (including 3 of the FAMGA companies) and several others, in Silicon Valley, New York, and Seattle. I was still based in Australia, so this was a massive challenge.</p>
<p>I re-designed my plan. Several of the steps were the same but the coding curriculum would have to be massively overhauled. I also needed to find out how US big tech recruitment is done, and be worthy of a referral.</p>
<p>About 7 months later, I started generating interviews. I worked very hard to prove myself worthy of referrals for those 7 months, and people offered to give me referrals based on my efforts and proven commitment.</p>
<p>I got referred to Meta (it was called Facebook then) but I didn't get the interview as my skills were not the right match. This was a massive learning for me as I thought I’d been careful to only apply for roles where my skills matched – and I was wrong.</p>
<p>That was when I realized that sometimes the position description is written in ways that mean one thing for the hiring company but means very different things <em>outside that company</em>. This is because different organizations use the same words to mean different things. Both the hiring side and the candidate side can be unaware of this!</p>
<p>All these learnings added up. Within 3 months I got offers from 2 big tech companies, and missed out on a third at the final interview because I just didn’t know how to write a filesystem from scratch (I didn’t understand much about the Linux world at all!).</p>
<p>And then I got an offer from Google.</p>
<p>Again, I was faced with a very difficult decision. Google is a cultural force that is very hard to be objective about. But I really wanted to stay true to my goals, my plan, and my intentions.</p>
<p>Trying to separate what I knew from what I thought was EXTREMELY hard when it came to Google. But I was absolutely sure about one thing: the team I’d interviewed with were amazing people.</p>
<p>And this is where I believe luck matters. No matter what people say about skills, brains, smarts and all that stuff, luck and "magic" have a role in life.</p>
<p>My interviewers from Google were friendly, kind, cheerful and highly focused engineers. They were not looking to prove I sucked. They wanted to help me prove I was good. They answered my questions with enthusiasm, and I felt like collaborators from the first minute.</p>
<p>Is this a Google thing? Maybe. But later, when training to be a technical interviewer at Google, I witnessed a very wide variety of interviewer/hiring manager styles and beliefs. I saw candidates with great skill losing their nerve, struggle to communicate their process, and so on. And I came to appreciate the role of chance in all this.</p>
<p>So yes – I was lucky that I had the kind of interviewers I did, and that on interview day I happened to know how to work through the code.</p>
<p>This is also where my ultra-focused preparation on <em>type of work</em> and <em>relevant</em> skills paid off. There are a very large number of engineering roles at Big Tech that I would never have been suited to (like the one at Meta). Even with my prior experience in other careers, I had no idea how HUGE the engineering world is, and how many flavors and types there are, and how hard it is to tell them apart.</p>
<p>By forcing myself to be highly intentional and not randomly and blindly applying for big tech engineering roles, I improved my chances in small but important ways. I dug deep into each role and researched them carefully by speaking to friends in the industry (again – my age and experience was an asset because I had built relationships over 15+ years never expecting that they’d be so useful later on!).</p>
<p>For each offer I got, I had researched the role deeply, and prepared for the technical interviews well. On interview day the stars were aligned, and things worked out. Though I don’t think I “nailed” my interviews, I did well enough to communicate that I was a suitable candidate <em>for the team’s needs</em>.</p>
<p>Which leads me to the question: How did I prepare for the Big Tech interviews?</p>
<h2 id="heading-how-to-prepare-for-big-tech-interviews">How to Prepare for Big Tech Interviews</h2>
<p>Answer: In two phases that took me over 500 hours to execute.</p>
<h3 id="heading-phase-1-learn-the-realities-and-competitive-landscape">Phase 1: Learn the Realities and Competitive Landscape</h3>
<p>If I wanted to tackle Big Tech, from another country, with less than a year of industry experience, and 15+ years in an unrelated career, with no Computer Science degree, I needed to have a very clear view of the realities, especially the competitive landscape.</p>
<p>This means there was room for informed hope, but no room for dreamy-eyed, pie-in-the-sky magical and wishful thinking.</p>
<p>Hard truths (see my <a target="_blank" href="https://www.youtube.com/playlist?list=PLAPuklwJx5V3XZS19AlJQayZFpiZyDT9C">initial YouTube Videos on this here</a>). Hard realities. Hard work.</p>
<p>I had to fully internalize and appreciate the following:</p>
<ul>
<li><p>Coding is just the starting point. Not the ending point. Learning to code was the first step of many, one small piece of a much larger puzzle. In other words, it is necessary, <em>but not sufficient</em> to get a coding job (and especially at big tech).</p>
</li>
<li><p>My biggest enemy would be my own mind. It would either let the negativity of others get me down, or it would turn against me and undermine my own confidence. I had to build the habits that would help me have a resilient mindset. I focused on recovering from setbacks rather than avoiding them.</p>
</li>
<li><p>My competitors would likely not be career changers. Or if they were, they’d be from closely <a target="_blank" href="https://www.linkedin.com/posts/zubinpratap_software-engineering-computer-engineering-activity-6946411823759810560-VvA-?utm_source=linkedin_share&amp;utm_medium=member_desktop_web">related fields like computer engineering, mechanical engineering, or electronics engineering</a>. The vast majority would have technical qualifications, maybe even PhDs (this turned out to be true!), and several years of industry experience.</p>
</li>
<li><p>As an outlier and a “wildcard”, the hardest part would be getting the interviews. Learning algorithms and data structures would be easier. And “cracking the coding interview” (whatever that means…) would be easier too. Why? Code is deterministic – identical code generally produces identical results. But life is not deterministic, and getting interviews is highly subjective. In the job market, identical actions do not produce identical results.</p>
</li>
<li><p>I needed to shape myself into the <em>kind of person</em> seasoned engineers would want to work with</p>
</li>
<li><p>I assumed most of my competitors would have at least 3 -5 years of experience. I couldn't catch up with them, let alone <em>overtake</em> them. Instead, I needed to outperform them on non-technical skills and compare favorably (if not outperform them) on the technical stuff.</p>
</li>
<li><p>I had to communicate better than the others. If I didn’t know something, I’d need to say so and then communicate how I’d solve it if given the right time and opportunity. I also had to communicate to show interviewers that I understood <em>their business needs</em> and wasn’t just focusing on my selfish dreams.</p>
</li>
<li><p>Which means I had to really work on understanding what the hiring team valued, was looking for, wanted, and needed.</p>
</li>
<li><p>I could not control my competitors (their skill, their performance, how much they knew, and so on), or what my interviewer was thinking, wanting, what they valued, or whether they liked career changers or not. I could not control <em>most</em> things. I could only optimize my effort, my focus, my psychology, and how much learning I extract out of each experience, good or bad. I could only control my choices and actions. So focusing on anything outside that would be a waste of precious energy.</p>
</li>
<li><p>I had to accept the role of luck. Jordan, Tendulkar, Federer – they’ve all had bad days. I would too. Or maybe I'd do great, but on the day someone else would do better. Or someone else would just be a better fit for what the team needed. No harm, no foul. I’ve made those hard decisions on the interviewing side countless times myself, so I know how these things work.</p>
</li>
<li><p>If I was successful at more than 1 offer I would need to <em>pre</em>-think and <em>pre</em>-agree with myself about what signals and factors I would use to decide (I’d learned from my experience of choosing between my first 4 offers!).<br>  If you’re wondering how I knew how to do all this…I didn’t. Not all at once. What you’re reading is a summary in hindsight. But I had to work most of this out in “real time” based on “<a target="_blank" href="https://fs.blog/first-principles/">first principles thinking</a>”. And I worked with my mentor to tighten them up as I went along. It took a lot of time and I was so impatient to “start coding”. But …I knew what advice Abraham Lincoln would give me…</p>
</li>
</ul>
<h3 id="heading-phase-2-how-i-chose-my-learning-resources">Phase 2: How I Chose My Learning Resources</h3>
<p>I know everyone thinks there is a secret “magic bullet” out there. Some blog, video, resource, tutorial, podcast, PDF cheatsheet…_something…_that will unlock the entire “secret” and make us instantly learn things.</p>
<p>Nope.</p>
<p>I’ll bang on about this till the day I die – information is a commodity.</p>
<blockquote>
<p>Learning is hard, but it’s made much harder because there is <em>too much free information</em>.</p>
</blockquote>
<p>We all fall into the trap of thinking there is some missing piece of information. There isn’t.</p>
<p>Why? Because no matter where you live, what language you speak, what color your eyes, skin, or hair are, what gender you identify with – all resources are going to teach you things that “work”. They’re all “the same” at a very fundamental level.</p>
<p>They <em>have</em> to be, because that’s how computers work.</p>
<p>If you and I write an identical function in JavaScript or Python or Java, we are going to get identical results. That’s how computers work – they’re <a target="_blank" href="https://en.wikipedia.org/wiki/Deterministic_algorithm">deterministic</a> <a target="_blank" href="https://en.wikipedia.org/wiki/Deterministic_algorithm">algorithms</a>.</p>
<p>But life (and interviewing) is most decidedly <strong>not</strong> deterministic. Identical effort, grades, skill, intelligence will not produce identical results.</p>
<p>Again, I had to <em>teach myself to</em> <em>learn</em>. I had to teach myself to shift my attention away from resources/blogs/websites/courses and put my attention on building solid mental models, identifying relevant skills, drilling down on concepts rather than code implementations, applying what I already knew in new ways, reasoning, problem solving, and communicating my reasoning <em>while</em> I reasoned.</p>
<p>Now you’re going to be surprised by the resources I used for my Google and other Big Tech interviews.</p>
<p>Yes, I used <a target="_blank" href="http://leetcode.com">Leetcode</a>, <a target="_blank" href="http://algoepxert.io">Algoexpert</a>, <a target="_blank" href="http://interviewcake.com">InterviewCake</a> and <a target="_blank" href="https://www.youtube.com/c/JennyslecturesCSITNETJRF">Jenny’s CS Lectures</a> and perhaps a few others. But I didn’t complete a single one of them.</p>
<p>This wasn’t because I switched or lost focus. I was being intentional. I realized that they all teach the same thing, but with slightly different styles and content. So I used these resources to learn concepts and mixed and matched all these resources based on my analyses of interview <em>patterns</em>.</p>
<p>My reasoning was simple. Having been on the hiring side, I know that every year the quality of candidates (at good companies) improves. I personally think that focusing on the company is a huge mistake – we should focus on the team, people and <em>kind</em> of work.</p>
<p>But the world works a certain way, and because of that, everyone rushes to the big companies. This increases competition which makes it harder for hiring managers to assess candidates.</p>
<p>The only way for hiring managers to deal with this is to raise the bar, making it harder for candidates. The overall number of candidates keeps increasing, but the “pool” of candidates that get invited to the interview stays within a narrow range – usually 2 -10 people. Regardless of how many hundreds apply that’s about the number that will even get a chance to interview.</p>
<p>Therefore, the number of candidates that don’t hear back or meet with rejection increases, especially in bull markets.</p>
<p>If the competition is increasing and the resources on the internet are also increasing, but the shortlisted number stays more or less constant, then “learning more” cannot be the solution. Everyone is “learning more”, so relative to the competition there is no change.</p>
<p>I also realized that Big Tech would have lists of interview questions (this is “efficient” as interviewing is <em>very</em> time consuming, and so it makes sense to save time by having a question bank that interviewers could use). Naturally, they would not use these questions if they were “leaked” – that would defeat the interview process.</p>
<p>So, logically, hiring managers will not ask questions that are available on Leetcode or Algoexpert or other sites. This produces a kind of “arms race” – the more questions are made publicly available, the more questions in the question bank are changed. That results in more innovation and variance in questions and hiring strategies.</p>
<p>This left me only one choice. I had to learn to solve problems using mental models and by classifying them. Chances are I was never going to be asked to sort a Linked List or to implement Dijkstra’s shortest path algorithm. Instead, I would need to know how to apply these sorts of algorithms to “real world”, practical problems.</p>
<p>Often real world problems don’t look, sound, or smell like the practice questions we study. Practice questions and competitive coding questions tend to be “neatly” packaged up with clear constraints.</p>
<p>But as an interviewer, I wanted to know how the candidate thinks, reasons, analyses, interprets information, and collaborates. Solving the problem is a bonus. Often they have the right solution but run out of time – but ask great questions and clearly know how to tackle the problem. These candidates can still get the offer.</p>
<p>Later, as an engineer at Google, I could always tell if someone <em>knew</em> how to solve something even if they were unable to solve it in time. Equally, it’s immediately obvious when a candidate does not know how to solve something (and that's OK – we are all learning).</p>
<p>By adopting my approach of understanding problem types and solutions rather than specific code implementation, I could focus on learning to reason rather than learning to write specific algorithms.</p>
<p>This approach meant that I completed less than 40% of Algoexpert (and back then it had half the questions it has now). I also did maybe 50-60 questions from Leetcode and most of them weren’t the “hard” ones.</p>
<p>I figured that “hard” questions would probably show up in 45 minute interviews about 20% of the time which means 80% of the time they’d be easy or medium questions. So it made sense to optimize for the 80% given I was still relatively new to engineering and the hard problems would get in the way of understanding easy and medium ones.</p>
<p>I used these resources to recognise patterns rather than just “complete” and get a certification. That’s why I didn’t complete any of them. And no, I didn’t use “<a target="_blank" href="https://www.amazon.com/Cracking-Coding-Interview-Programming-Questions/dp/0984782850">Cracking the coding interview</a>” either.</p>
<p>Along the way I also started a systematic process of understanding system design questions. I documented system design preparation in a <a target="_blank" href="https://www.freecodecamp.org/news/systems-design-for-interviews/">long form blog on the essential concepts for system design interview questions</a>.</p>
<p>I also decided to focus on one language: JavaScript. It wasn’t the best for interviewing (seasoned engineers discourage it on Quora and elsewhere) but I didn’t see how it mattered. The purpose of the interview was not to test my choice of languages – it was to test my ability to think abstractly and solve complex computer science-y problems.</p>
<p>The language is just a tool (another core belief I hold). In fact, using an untyped language like JS would give me opportunities to talk about its limitations or strengths, which is an opportunity to demonstrate that I understand the tradeoffs in language choices. That way, I could showcase broader knowledge and insight without actually having to implement it all in code.</p>
<p>But a lot of the resources I learned from used Java or C++. These languages are the dominant languages at Google. So being forced to read these languages and understand the principles forced me to not focus too much on “spitting out the code” and more on reasoning through the code so that I could write it.</p>
<p>That was my entire plan. Practice, Pattern Recognition, Mental Models/First Principle Thinking, System Design, doing fewer things really well, and focusing on getting interviews rather than just learning more code.</p>
<h3 id="heading-how-to-stand-out-during-interviews">How to Stand Out During Interviews</h3>
<p>As I mentioned, we all have advantages and disadvantages. And we all think our disadvantages are special and huge and our advantages are common, unremarkable, and probably not of much use.</p>
<p>This is not true. Logically, if we all think our disadvantages are severe, then we should all succumb to them. Yet some people overcome them. Only to find that others had it even worse and overcame <em>those</em>.</p>
<p>It’s way better to focus on what we can do well. For me, I truly believed that I could add a lot of value to the team. I don’t care about being the smartest or the best. But I care about being an outstanding learner, and maintaining my <a target="_blank" href="https://www.youtube.com/watch?v=hiiEeMN7vbQ">growth mindset</a> at all costs.</p>
<p>And so I tried to use this to stand out as best I could. I learned to ask really good questions of recruiters, interviewers, and hiring managers.</p>
<p>But there was a deeper reason for this. Asking good questions was my way of interviewing the company. Like I said, I didn’t want to repeat the mistakes of the first half of my career. So asking really good questions was important for me to assess whether the company was a fit <em>for me</em> and not just the other way around.</p>
<p>Since I had decided that I was going to value the team and the learning over all else, I never asked about the compensation until the recruiter raised it. It was going to be lower than what I earned as a lawyer anyway!</p>
<p>Instead I focused very hard on learning about the team, its dynamics, its group beliefs and values, how the manager solved problems (especially people problems), what the team was interested in, what the company division was interested in, how its balance sheet was doing, what its strategy was, what its resource allocation and budgeting looked like, and so on.</p>
<p>All these things were things I'd learned in other industries, as an individual contributor, as a manager, executive, founder and so on.</p>
<p>And all of these things also showed that I was being highly intentional. I was genuinely interested in the team, and the company, its product and its future. This wasn’t just another job I was applying for. This was active and personal…not passive and opportunistic.</p>
<p>And I believe that helped me stand out. Maybe not for all the roles I interviewed for, but for many of the offers I got.</p>
<p>When I was on the hiring side, I’d always prefer candidates who were genuinely interested in the role, the people, the product and the company. Those that showed up just “to get a job” didn’t have the kind of energy and drive we wanted.</p>
<h3 id="heading-interview-planning-and-strategy">Interview Planning and Strategy</h3>
<p>The last aspect of my roadmap required me to deeply understand the different types of coding interview processes.</p>
<p>This included technical and non-technical interviews, the format of interviews, the way companies organize them, run them, plan them, staff them, evaluate them, and weigh them. But it also required me to understand my strengths and weaknesses.</p>
<p>When going for Big Tech in the US I was aiming for 2-3 interviews per month – a huge goal given that I was not even in the US and was in a timezone that was 17 hours ahead of the west coast.</p>
<p>I had to plan and structure interviews at weird hours so I could accommodate my day job as a developer and also my study time. Some interviews took 6 hours, some took 10 or more. Some were “pair programming for a day” type interviews.</p>
<p>All this took a ton of planning, and mental training. I had to be careful to get the right sleep, the right exercise, maintain my mindset and confidence, deliver on my day job, be there for my family, study and maintain focus on my goals.</p>
<p>For this, I had to be honest with myself at what I was good at. For example, I am not a morning person. But I can endure late nights. So I structured interviews, work, sleep, or even exercise accordingly.</p>
<p>There were some interviews that were scheduled at 2am or after, and I wouldn’t sleep before (as I really am not good at waking up on time!). So I’d do a full workout at 1am to get my energy and focus up, then interview, then sleep till 10 am, then go to work and manage my schedule accordingly.</p>
<p>I would also be careful to plan interviews so that I wasn’t doing two of them back to back unless they were very similar and time bound. For example, doing a take-home test and doing a timed test in the same week require different planning from doing a take-home and a live-coding interview – all while managing work and family.</p>
<p>To schedule the interviews appropriately I’d work closely with the recruiter and be very transparent with them. This had two advantages: I gained credibility and trust with the recruiter for being collaborative and communicative, and they also got to see that I had other opportunities going, which increased the value of my candidacy. Competition is a good thing.</p>
<h2 id="heading-concluding-thoughts">Concluding Thoughts</h2>
<p>I am sure many of you were expecting this article to give “insider” tips and a specific set of languages, and DSA questions to learn. I believe I’ve given you something much better. Rather than giving you fish, I am showing you how to fish.</p>
<p>Apart from the ethics of it, insider tips are of limited value, especially in Big Tech. In huge companies things can be vastly different from team to team and city to city. You need to understand the principles of recruitment and career development, rather than just the specific languages and algorithms. Assuming that all interviews are the same is a big mistake.</p>
<p>And as for our obsession with data structures and algorithms…managing your career is the ultimate algorithm. Your mind is the ultimate data structure. Learn how to work with both and you’ll always do well, despite the occasional failures. <a target="_blank" href="https://twitter.com/ZubinPratap/status/1534341043344252929">Powerful ideas aren’t grandiose – they’re elegantly minimal</a>.</p>
<p>If you have read this article you will have noticed some of the things I linked to include multiple ways to reach me. You can also get invited to my <a target="_blank" href="https://futurecoderstraining.com">webinars, mini-courses and newsletters</a> if you want to go beyond just “learning to code” and learn how to build a career that is <em>right for you</em>.</p>
<p>Perhaps the most important message I can leave you with is that it is a mistake to obsess about big tech. Yes, they’re great to be part of, but if we believe they’re the only thing that is right for us we will miss out on all the other amazing opportunities.</p>
<p>Big Tech has glamor because of cultural trends these days. Sure, it’s nice to work for a great organization, but plenty of great organizations are not well known. Plus what is “great” for one person is pain for another.</p>
<p>Your number one priority is to be happy, fulfilled, and live the life that you want. This is not derived from a company. This comes from the people you spend time with (especially colleagues) and the kind of work you do. Big Tech companies have their share of bad managers, teammates, and work, just like any other company.</p>
<p>If you build skill, stack a great plan on top of the right mindset, and train yourself to set the right goals, you can achieve much more than you dreamed of – with or without Big Tech.</p>
<h3 id="heading-post-script">Post Script</h3>
<p>If you would like to learn more about my journey from lawyer to software engineer, check out <a target="_blank" href="http://podcast.freecodecamp.org/53-zubin-pratap-from-lawyer-to-developer">episode 53</a> of the <a target="_blank" href="http://podcast.freecodecamp.org/">freeCodeCamp podcast</a> and also <a target="_blank" href="https://lessonsfromaquitter.com/episode207/">Episode 207</a> of "Lessons from a Quitter". These provide the blueprint for my career change.</p>
<p>If you are interested in teaching yourself to code, changing careers and becoming a professional coder, or <a target="_blank" href="https://www.freecodecamp.org/news/non-technical-and-looking-for-a-technical-co-founder-2c212c01d6da/">becoming your own technical co-founder</a>, please reach out <a target="_blank" href="http://linktree.com/zubinpratap">here</a>. You can also check out my free webinar on <a target="_blank" href="http://futurecoderstraining.com/">Career Change to Code</a> if that is what you're dreaming of.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to Become a Quality Assurance Engineer – QA Engineer Career Guide ]]>
                </title>
                <description>
                    <![CDATA[ A Quality Assurance (QA) Engineer is someone who tests software products throughout the whole development process. They ensure that the product meets high quality standards before releasing it to the public. But how do you become a QA Engineer? In th... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-become-a-quality-assurance-engineer-qa-engineer-career-guide/</link>
                <guid isPermaLink="false">66b8d96857c651c38343a9a0</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Quality Assurance ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Jessica Wilkins ]]>
                </dc:creator>
                <pubDate>Mon, 16 May 2022 15:33:12 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/05/thisisengineering-raeng-1oYSrlQrpY4-unsplash.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>A Quality Assurance (QA) Engineer is someone who tests software products throughout the whole development process. They ensure that the product meets high quality standards before releasing it to the public.</p>
<p>But how do you become a QA Engineer? In this article, I will talk about the qualifications and process for becoming a QA engineer.</p>
<h2 id="heading-what-is-quality-assurance-and-quality-control">What is Quality Assurance and Quality Control?</h2>
<p>When a product is being built, stakeholders have expectations and requirements. It is important that there is a process put in place to ensure that those high quality standards are being adhered to and mistakes in the product development are spotted and reported.</p>
<p>Quality Assurance focuses more on proactive processes while Quality Control focuses more on reactive corrections that need to be made. </p>
<p>Quality control also focuses on inspection and testing whereas Quality Assurance involves documentation, audits, and management.</p>
<h2 id="heading-core-skills-needed-for-becoming-a-good-qa-engineer">Core skills needed for becoming a good QA engineer</h2>
<h3 id="heading-attention-to-detail">Attention to detail</h3>
<p>The role of a QA engineer involves being detail-oriented and thorough in order to spot issues or discrepancies in quality standards set for the product.</p>
<h3 id="heading-good-communication">Good communication</h3>
<p>QA engineers will be communicating with stakeholders, management, and developers for the product. Effective and clear communication between all parties involved is really important for the development process of a product.</p>
<h3 id="heading-good-time-management">Good time management</h3>
<p>Since a QA engineer will have to balance multiple tasks throughout the day, it is important to have strong time management skills to ensure that you stay productive and are able to meet your deadlines.</p>
<h3 id="heading-problem-solving-skills">Problem solving skills</h3>
<p>Throughout the life cycle of a product, issues will arise. It is important that QA engineers have strong problem solving skills and are able to develop a plan to solve those issues.</p>
<h3 id="heading-strong-listening-skills">Strong listening skills</h3>
<p>A good QA engineer not only needs to be able to communicate but also listen to their development team, management, and stakeholders to ensure the successful launch of the product.</p>
<h3 id="heading-the-ability-to-write-a-test-plan">The ability to write a test plan</h3>
<p>A test plan is a document detailing the objectives and testing processes that will be applied to the software product. QA engineers will work with other developers and stakeholders to develop this testing strategy.</p>
<h3 id="heading-an-understanding-of-test-automation-tools-and-manual-testing-practices">An understanding of test automation tools and manual testing practices</h3>
<p>It is helpful for QA engineers to be familiar with different automated testing tools like Selenium. They will also need to know how to effectively manually test products in order to identify bugs.</p>
<h3 id="heading-strong-understanding-of-the-software-development-life-cycle">Strong understanding of the Software Development Life Cycle</h3>
<p>A good QA engineer should understand the full life cycle of software products in order to effectively plan and test them.</p>
<p>Here are the 7 phases of the <a target="_blank" href="https://www.freecodecamp.org/news/get-a-basic-understanding-of-the-life-cycles-of-software-development/">Software Development Life Cycle</a>:</p>
<ol>
<li>Planning Stage</li>
<li>Analysis Stage</li>
<li>Design Stage</li>
<li>Software Development Stage</li>
<li>Software Testing Stage</li>
<li>Implementation and Integration</li>
<li>Operations and Maintenance Stage</li>
</ol>
<h2 id="heading-do-you-need-to-learn-how-to-code-become-a-qa-engineer">Do you need to learn how to code become a QA engineer?</h2>
<p>Learning programming fundamentals can help QA engineers build automated test suites to save time on manual testing and provide a better understanding of the development implementations by the software developers.</p>
<p>Some widely used programming languages to learn would be Java, C#, JavaScript, and Python.</p>
<p>Choose one language to learn to get an understanding of the programming fundamentals.</p>
<h2 id="heading-do-you-need-a-computer-science-degree-to-become-a-qa-engineer">Do you need a Computer Science degree to become a QA engineer?</h2>
<p>Having a Computer Science degree can help you when it comes to finding your first Quality Assurance job because a lot of employers still prefer a degree. If you have the time and money to pursue that path, that can be a viable option.</p>
<p>Other options would be to go to a bootcamp or teach yourself through online resources. If you are considering a bootcamp, please read through this <a target="_blank" href="https://www.freecodecamp.org/news/coding-bootcamp-handbook/">helpful resource</a> first.</p>
<h2 id="heading-do-you-need-certifications-to-become-a-good-qa-engineer">Do you need certifications to become a good QA engineer?</h2>
<p>QA certifications can help boost your resume and knowledge base. A lot of these certifications do require that you have degree from an accredited university or a few years of experience.</p>
<p>Here are some QA certifications you can look into:</p>
<ul>
<li>Certified Associate in Software Testing (CAST)</li>
<li>Certified Test Engineer (CSTE)</li>
<li>Certified Software Quality Analyst (CSQA)</li>
</ul>
<h2 id="heading-how-to-get-a-job-as-a-qa-engineer">How to get a job as a QA engineer</h2>
<p>Once you have learned programming, testing, and QA fundamentals then you can start looking for junior level positions. Make sure to build out a strong résumé and prepare for the QA interview questions using free online interview guides.</p>
<p>If you are self taught, it would help to have a little bit of experience through small contract work. If you are in a degree program, students will have access to internship opportunities and other career resources.</p>
<h2 id="heading-salaries-for-qa-engineers">Salaries for QA engineers</h2>
<p>Salaries for QA engineers will range depending on experience and location. The average base US salary according to <a target="_blank" href="<https://www.payscale.com/research/US/Job=Quality_Assurance_(QA)_Engineer/Salary>">payscale</a> is $72,000.</p>
<p>I hope you enjoyed this article and best of luck on your software journey.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Should I Be A Developer? How to Pick a Career as a Programmer ]]>
                </title>
                <description>
                    <![CDATA[ Few things are as important as picking your career path. And consequently, fewer decisions are harder to make. It is, after all, hard to know whether or not you’ll like something that you’ve never done. If you choose a career path based on the wrong ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/should-i-be-a-developer-programmer/</link>
                <guid isPermaLink="false">66d4601755db48792eed3f75</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Career Change ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Career development  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ software development ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Luke Ciciliano ]]>
                </dc:creator>
                <pubDate>Mon, 16 May 2022 15:03:48 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/05/career-choices-1.jpeg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>Few things are as important as picking your career path. And consequently, fewer decisions are harder to make.</p>
<p>It is, after all, hard to know whether or not you’ll like something that you’ve never done.</p>
<p>If you choose a career path based on the wrong reasons, you might end up unhappy in your job which can negatively affect your quality of life. You also might not be making as much money as you wanted and end up credentialed for a job which you're simply not good at.</p>
<p>Fortunately, there are some methods you can use to help you decide what a good career path is for you. Picking the right path can help you to look like this:</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/05/pexels-christina-morillo-1181371.jpg" alt="Image" width="600" height="400" loading="lazy"></p>
<p>While those who get stuck in the wrong career wind up looking like this:</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/05/unhappy-developer.jpeg" alt="Photo of software developer screaming at her computer" width="600" height="400" loading="lazy"></p>
<p>In this article, I’m going to talk about whether a career path as a developer might be the right one for you. (Hint: if you want to do it, you can. And here I'll share how.)</p>
<p>I’m writing this article with substantial input from Marc Gray, who is the founder of <a target="_blank" href="https://odysseycollegeprep.com/">Odyssey College Prep</a>.</p>
<p>Among other things, Marc has extensive experience in administering aptitude tests and assisting young people with choosing career paths. He provided a lot of great insight for this article which goes beyond your typical “pick a career” type writings.</p>
<p>The goal of this article is to give you a framework which can help you decide whether or not they want to become a software developer. My goal is also to help you pick an area of focus if you decide that development is for you.</p>
<p>Finally, I'll provide some general advice on how to avoid some of the big mistakes people tend to make in developer job interviews. If you’re like I am, and prefer written information to video format, then read on. Or, if you prefer watching your tutorials, Marc and I address these topics in this video:</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/JOQbJjbHHPc" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
<p> </p>
<p>I’m going to be diving into quite a few topics. To jump to a particular section, simply click “jump to section” in the table of contents below. So…shall we?</p>
<h2 id="heading-table-of-contents">Table Of Contents</h2>
<ol>
<li><p>Is programming a good fit for you? (<a class="post-section-overview" href="#quest1">jump to section</a>)</p>
<ol>
<li><p>Why it is important to enjoy your job. (<a class="post-section-overview" href="#quest2">jump to section</a>)</p>
</li>
<li><p>Will you like being a programmer? (<a class="post-section-overview" href="#quest3">jump to section</a>)</p>
</li>
<li><p>Do you have the ability to become a developer? (<a class="post-section-overview" href="#quest4">jump to section</a>)</p>
</li>
</ol>
</li>
<li><p>Current programmer job openings &amp; salaries (<a class="post-section-overview" href="#quest5">jump to section</a>)</p>
</li>
<li><p>How to find a job as a software developer. (<a class="post-section-overview" href="#quest6">jump to section</a>)</p>
<ol>
<li><p>How to stand out in an interview. (<a class="post-section-overview" href="#quest7">jump to section</a>)</p>
</li>
<li><p>Common interviewing mistakes to avoid (<a class="post-section-overview" href="#quest8">jump to section</a>)</p>
</li>
</ol>
</li>
</ol>
<h2 id="heading-is-programming-a-good-fit-for-you">Is programming a good fit for you?</h2>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p>The preliminary question in deciding whether you should become a programmer is whether or not you will be happy doing it.</p>
<p>While this may sound like a “duh” statement, I’ve come to appreciate how many people dive into a career path without ever considering whether it fits them as a human.</p>
<p>Choosing a career that is not a good fit for your personality is a good way to increase the odds that you go on to be miserable.</p>
<p>The following part of this article will address the importance of actually liking your job in general, how to tell if you might enjoy being a developer, and whether or not development is something you can actually be good at.</p>
<p>Let’s look at each of these in turn.</p>
<h3 id="heading-individuals-choosing-a-career-path-must-understand-the-importance-of-liking-their-job">Individuals choosing a career path must understand the importance of liking their job</h3>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p>When deciding whether you want to become a developer, the first step is to determine whether it is a field that you will like and which will interest you.</p>
<p>Being genuinely interested in the field should take precedence over considerations of money or prestige. This is because, while it’s easy to say “of course people should like their job” and it seems obvious, the fact of the matter is that most people work in careers they don’t enjoy.</p>
<p>Hating your job stems from:</p>
<ul>
<li><p>not putting a lot of time or research into making career choices, and</p>
</li>
<li><p>jumping into a career simply because an opportunity popped up and not due to thinking about whether the new field was actually a good fit.</p>
</li>
</ul>
<p>This results in quite a few problems. These include a lack of success at work, higher levels of unhappiness when you're not at work, personal relationship problems, and more.</p>
<p>Let’s quickly look at why being at least interested in your job <em>does matter</em> and the impact of doing something you don’t enjoy.</p>
<p>Many will say that they “don’t let their job define them” or some similar rhetorical statement in an effort to claim that disliking their job isn't a “big deal.”</p>
<p>Whenever someone tries to tell me that being excited about their career choice isn’t important, I tend not to believe them.</p>
<p>Why do I say this? Well…here are a few reasons, off the top of my head. First, if your work isn’t “important to you” then why do you spend as much, if not more, time at work than you do with your family, sleeping, or engaging with your hobbies?</p>
<p>Given the amount of time you spend at work, it’s clearly a big priority in your life. If you think that what you do for a living doesn’t matter to your personal happiness, then you’re likely not being honest with yourself.</p>
<p>It’s also important to remember that you’re very unlikely to be successful in a career you choose if you’re not happy in the field.</p>
<p><a target="_blank" href="https://www.businessinsider.com/happiness-doesnt-follow-success-its-the-other-way-2019-5">According to Business Insider</a>, people who are happy in their job are absent less often and they tend to earn higher salaries. The reasons behind this aren’t rocket science. If you're happy with what you do, and you're interested in the work, then you are willing to put more effort into it. This increased effort equates to greater success.</p>
<p>By contrast, if you see your daily tasks as drudgery, then you're going to do the bare minimum and do everything you can to get out of doing any extra work. Because of this, being unhappy with your career choice will, therefore, lead to you failing at work.</p>
<p>Liking your field also likely leads to a happier home life. The realistic chances that someone can be miserable in their workplace all day, and come home in a happy mood are essentially zero. This leads to problems with your significant other, children, and so on.</p>
<p>Hating your job can also lead to higher rates of alcoholism, substance abuse, and poor mental health. Add to this the fact that you’ll be more likely to struggle financially, and the importance of liking what you do should become clear.</p>
<p>Fortunately, as Marc stated while assisting with this article, “interests are like fuel.” If you can find a field which you find interesting and engaging, then you flip the whole paradigm. You become more likely to put in the extra effort, to excel, to make more money, and this has a positive spillover effect in your life.</p>
<p>This is not to say that you can pick a career that is nothing but fun with no stress. Such jobs don’t exist. There are plenty of things about my career as a front-end developer which I find annoying. The aspects which interest me and keep me engaged, however, far outweigh the downsides.</p>
<p>When deciding whether you should be a programmer or enter some other field related to software development, it is important to understand that the first step in your decision making is to decide whether you will even like the field.</p>
<h3 id="heading-how-to-decide-if-you-will-enjoy-being-a-programmer-or-software-developer">How to decide if you will enjoy being a programmer or software developer</h3>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/05/career-compass.jpeg" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Are there areas in an industry field that your personality and interests align with? Answering that question is the key to determining whether you will enjoy being a programmer or software developer.</p>
<p>This is an important part of the career choice process which many people miss. Too often people choose a career path because of perceived high salaries, perceived social status, or simply because they think the job “looks cool.” They don’t stop to think about whether the job actually entails activities which they will genuinely enjoy.</p>
<p>Fortunately, there are ways to figure out whether being a developer, in general, is a good fit for you, and to determine which particular niche in the dev world might align with your interests. Let’s dive into this.</p>
<p>The <strong>first step</strong> in deciding whether development is for you is to take stock of your interests. In other words, list activities you find enjoyable.</p>
<p>By making a list of the activities you enjoy, you develop a starting point for choosing the right career.</p>
<p>You’ll then want to identify the professional equivalents of those interests.</p>
<p>For example, I greatly enjoy analytical problem solving and the process of putting things together. I also enjoy analyzing situations in finance, in which one input may impact a given output. It’s also easy for me to spend hours playing puzzle based games. This is why my niche of providing front-end development services to small businesses is greatly appealing to me.</p>
<p>Whatever it is that <em>you</em> find enjoyable, there is a good chance that it translates into some sort of professional equivalent. So, when picking a career, the first thing to do is to identify the types of activities which you enjoy.</p>
<p>The <strong>second step</strong> in deciding whether to become a programmer is to determine what these aforementioned “professional equivalents” of activities you enjoy actually are.</p>
<p>This allows you to enter freeCodeCamp, or some other curriculum, with an idea of where you are headed and what type of job you will eventually want to apply for.</p>
<p>When deciding which fields may fit your personality and interests, here are some things to consider:</p>
<h4 id="heading-if-you-are-considering-front-end-development">If you are considering "front end" development:</h4>
<p>Think of a “front end developer” as someone who works with the public facing part of a website or an application. They build/maintain the components which individuals interact with.</p>
<p>You may do well in this type of environment if you have a high “visual memory.” This means that you tend to have a strong memory for what things look like. You also tend to care quite a bit about visual appearances.</p>
<p>You might be well-suited for this work if you're able to consider how components interrelate to each other. For example, you would have an ability to consider how the placement of a button on a website impacts the likelihood of the button actually being clicked on by the end user.</p>
<p>While by no means an exhaustive list, these are just a few examples of traits typical in those best suited for front end work.</p>
<h4 id="heading-if-you-are-considering-back-end-work">If you are considering “back end” work:</h4>
<p>A “back end developer” is someone who develops the application which runs on the front end. So, for example, if you have built a website which helps someone find homes which are available for rent, the back end developer builds out the necessary databases, search functions, and so on.</p>
<p>You'll likely be best suited for this type of work if you have a desire to deal with concrete facts. To put it another way, if you often like to take inputs and create something useful out of it, back end work might be a great fit.</p>
<p>Another common trait among back end devs is that they tend to be able to remember numerical sequences and aren’t intimidated by large bodies of text.</p>
<p>There are many other tracks in software development other than the first two I just listed. Other options can include:</p>
<ul>
<li><p>Full-stack developer</p>
</li>
<li><p>Information Systems Management</p>
</li>
<li><p>Data analyst/data science</p>
</li>
<li><p>Quality assurance</p>
</li>
</ul>
<p>To get a better understanding of a field which may interest you, I suggest taking a look at the <a target="_blank" href="https://www.freecodecamp.org/learn">freeCodeCamp curriculum</a> and researching the type of traits typical to someone working in a given field.</p>
<p>The big takeaway from this section of the article should be that you can look at your personal traits and find fields in software development which align with those traits.</p>
<h3 id="heading-do-you-have-the-skills-or-abilities-to-become-a-programmer">Do you have the skills or abilities to become a programmer?</h3>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p>There is one big question which many people may have even after they’ve determined that a) they want a career which they will actually enjoy and b) they’ve decided that being a developer aligns with their personal interests.</p>
<p>Here it is:</p>
<p>Do you have the capacity to become a developer?</p>
<p>Many people don’t take the opportunity to get into development because they believe that they lack the skills or aptitude to be good at it.</p>
<p>The good news is that you can get into development with some hard work. To understand why this is, let’s look at the difference between aptitudes and skills. Once we understand this difference, we’ll find that anyone can do something in the software arena.</p>
<p>Think of “Aptitude” as someone’s “natural ability” to do something. “Skill,” by contrast, is the ability to do something which comes after practice and repetition.</p>
<p>While aptitudes can certainly give someone a head start at something, the person with a high aptitude will likely never be truly great at something if they don’t put in the practice.</p>
<p>What this means, at the end of the day, is that someone with a high aptitude for engineering or solving technical problems can possibly still be a decent developer without working overly hard at it.</p>
<p>But someone who works hard at developing the skill, however, will likely succeed even if they begin with a lower aptitude.</p>
<p>Now if you’re someone who has a high aptitude, and is willing to put in the work and develop the skill, then the sky's the limit.</p>
<p>The truth of the matter is that natural aptitude will get you to a certain point, but that point stalls out real fast. No matter how naturally inclined you are at learning languages, for example, if you've never spoken or heard French then you're not going to understand a word of it.</p>
<p>The ability to expand a learned skill, however, has a much higher ceiling. This means that if you want to become a programmer then you likely have the capacity to do so.</p>
<p>Here are a few tips I would offer if you're hoping to develop your programming skills:</p>
<h4 id="heading-code-every-day">Code every day</h4>
<p>When you’re learning to code, then you are also learning to think of things in a different way. Not only are you learning programming languages, you’re learning how frameworks interact with each other and you’re thinking about problems in a way which is probably novel to you.</p>
<p>You might be surprised at how fast you pick things up if you work on it every day and allow your mindset to shift.</p>
<p>You’ll be equally shocked at how much harder things seem if you take an extra day off here and there. For the first several months of your journey in learning to code, try to work on it every day.</p>
<h4 id="heading-pick-a-curriculum-where-you-build-projects">Pick a curriculum where you build projects</h4>
<p>There are some online code education platforms which do not require you to actually build something or have you build something that is simple in nature.</p>
<p>Such platforms, for example, may show you how to create a hyperlink in HTML or change a font with CSS, but they don’t require you to actually build a website containing the hyperlink or the font.</p>
<p>By choosing a curriculum that requires you to put the skills you're working on to use, before declaring you done with the program, you will greatly improve your ability.</p>
<h4 id="heading-dont-get-stuck-in-constant-tutorials">Don’t get stuck in constant tutorials</h4>
<p>Many, many, many (many) people feel that they are “not ready” to look for a job and they just keep going through tutorials over and over again.</p>
<p>The cold and hard truth is that constantly completing tutorials is a drop in the bucket compared to the skill you will develop with a real-world employer.</p>
<p>Also, your employer will be well aware that you are a newbie. As soon as you feel you meet the requirements to apply for a job, then you are ready to get out there.</p>
<p>The key takeaway here is that you don’t have to be a “natural engineer” or a math prodigy to become a software developer/programmer. In fact, many who work in the field aren’t.</p>
<p>If you are willing to learn and put in the time then you have a good chance of success.</p>
<p>This, going back to the earlier part of this article, is why it is so important to pick a track that interests you: you are unlikely to want to put in the time for something that doesn’t truly interest you.</p>
<p>So, by picking a field that peaks your interest you put yourself in a position where you will be willing to build the necessary skills, even if you don’t have the most natural ability.</p>
<p>The bottom line is that you can become a programmer with time and hard work.</p>
<h2 id="heading-career-options-for-software-developers">Career options for software developers</h2>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/05/Computer-with-money.jpg" alt="Image" width="600" height="400" loading="lazy"></p>
<p>We’ve just discussed a few threshold questions to consider if you're thinking about becoming a programmer. These include the importance of liking your career choice and understanding that no job is worth it unless you'll be interested in the field.</p>
<p>We also talked about how to decide which fields of development you may find interesting and how you can develop the necessary skills to succeed in software development.</p>
<p>In this section of my article, I’m going to dive into the economics of a few possible software development tracks. This is important to the question of “should I become a programmer” for a simple reason – those entering a field need to support themselves.</p>
<p>In preparation for this article, I did some research on Indeed.com as to current openings, salaries, and so on. Here’s what was available in the United States as of April 7th, 2022:</p>
<h4 id="heading-front-end-development">Front End Development</h4>
<ul>
<li><p>Total job openings: 41,000+</p>
</li>
<li><p>Entry level openings: 5,700+</p>
</li>
<li><p>Starting salaries over $60k: 2,900+</p>
</li>
</ul>
<h4 id="heading-back-end-development">Back End Development</h4>
<ul>
<li><p>Total job openings: 20,000+</p>
</li>
<li><p>Entry level openings: 1,800+</p>
</li>
<li><p>Starting salaries over $85k: 8,600</p>
</li>
</ul>
<h4 id="heading-other-possibilities-average-salaries">Other Possibilities (Average Salaries)</h4>
<p><em>Source: Indeed (as of April 26, 2022)</em></p>
<ul>
<li><p>Full-stack developer: $109,000</p>
</li>
<li><p>Information Systems Management: $84,810</p>
</li>
<li><p>Data analyst/data science: $98,230</p>
</li>
<li><p>Quality assurance: $88,550</p>
</li>
</ul>
<p>If you feel like you may be interested in front-end development, based on the discussion above, then you should learn HTML, CSS, Javascript. I would also suggest becoming familiar with the various front-end libraries (like React, Angular, and Vue).</p>
<p>For those who are more interested in application/back-end development, then it is important to understand that, in today’s world, you will still be writing a fair amount of code – but you will also be spending an extreme amount of time working with various microservices to build a product out of existing tools.</p>
<p>There are also large numbers of openings for those with skills relating to data visualization, security, as well as the jobs listed under “other possibilities” above.</p>
<p>One key point I would stress here is that such jobs are often willing to hire someone even if they don’t strictly meet the experience requirements. If you put in a résumé, after all, the worst someone can do is say no.</p>
<h2 id="heading-how-to-find-a-job-as-a-software-developer">How to find a job as a software developer</h2>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/05/online-job-application.jpeg" alt="Image" width="600" height="400" loading="lazy"></p>
<p>An important thing for anyone attempting to get a job as a programmer is to do well on the interview. As someone who has employed people in multiple businesses, I have to say that the mistakes people make on interviews truly baffle me. In this section of the article I’m going to look at how to properly interview for a coding job and mistakes which people should avoid.</p>
<h3 id="heading-how-to-do-well-at-a-coding-interview">How to do well at a coding interview</h3>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p>I understand that in this “how to do well” section, the points I’m going to make may sound like “duh” statements.</p>
<p>The truth of the matter, however, is that probably ninety percent of the percent of the people I’ve interviewed over the years don’t get all of these things down. So, with that said:</p>
<h4 id="heading-show-up-prepared">Show Up Prepared</h4>
<p><a target="_blank" href="https://www.freecodecamp.org/news/how-to-prepare-for-a-software-developer-interview/">Showing up prepared</a> doesn’t just mean appearing for the interview. It’s important to actually do some research on the company as well as the individual who will be interviewing you.</p>
<p>This means that, before your interview, you should spend time doing research on the company. Find out what services they offer, who their target customer is, how long they’ve been in business, and so on.</p>
<p>Looking up the individual who is interviewing you will give you the opportunity to learn more about them. This includes their work history, role at the company, and more.</p>
<p>During interviews I tend to ask questions which let me know whether the interviewee had done their homework. If it shows that they haven’t, then I have to ask myself: “if they can’t even research a company for an interview, then how can I assume that they will be proactive in the researching of potential solutions?” A little preparation goes a long way.</p>
<h4 id="heading-show-how-you-will-add-value-to-the-company">Show how you will add value to the company</h4>
<p>Researching the company, as explained above, puts you in a position to show how you will add value to the business. When you are asked questions about yourself then you can relate the answers in a way which shows how you will add such value.</p>
<p>For example, in my company we build websites and automation solutions for owner-run to medium-sized companies. If someone has done their research on our company, and I ask them why they applied, they can respond by explaining how excited they are about the idea of working with small business owners directly. They can also make their answer about how their interests align with the types of automation products we work on. This tells me, as an employer, that they are thinking about how they will add value to the business.</p>
<p>In other words, your answers to questions should relate back about how you will add value when serving the customers of the business.</p>
<h4 id="heading-dont-be-shy-about-needing-to-look-things-up-when-coding">Don’t be shy about needing to look things up when coding</h4>
<p>In any coding interview, you’re going to need to answer some basic coding questions. I usually have an interviewee perform 5-6 simple tasks. I make sure, however, that at least some of them are things which the interviewee is unlikely to know off the top of their head.</p>
<p>What I’m looking for in the interview is for someone to not get frazzled and who will ask for one moment while they look up the solution (I only use questions which I know can be found through a quick Google search). It’s OK in an interview to ask to look things up.</p>
<h3 id="heading-mistakes-to-avoid-in-coding-interviews">Mistakes to avoid in coding interviews</h3>
<p>(<a class="post-section-overview" href="#table-of-contents">back to top</a>)</p>
<p>Now it’s time to look at some common mistakes which people make during job interviews. And, yes, I have had individuals make these mistakes when interviewing with me.</p>
<h4 id="heading-showing-up-at-the-last-minute-or-worse-late">Showing up at the last minute or, worse, late</h4>
<p>If you want to send a clear message to the potential employer that a) you don’t care about the job or b) that you have no time management skills, show up at the last minute or even late.</p>
<p>I recently had someone who actually showed up late for a virtual interview (I didn’t think that was possible). If someone is about to start your interview, and it’s clear to them that you weren’t early, then you just decreased your chances significantly.</p>
<p>If you are interviewing in person, then show up early and wait. If you are interviewing virtually, then log on to the chat early and wait for the interviewer to enter.</p>
<h4 id="heading-making-the-interview-all-about-you-or-generic">Making the interview all about you or generic</h4>
<p>Don’t make the mistake of assuming the interviewer wants to hear about you generically as a person.</p>
<p>First, when an interviewer asks you to tell them about yourself, then don’t start reciting your résumé (they can read your résumé) and don’t start simply talking about your personal interests. They don’t care.</p>
<p>Instead, you should be talking about how your interests align with those of the company (see above). This shows the interviewer that you are prepared to provide value to the company.</p>
<p>Also, when asked to tell a little bit about yourself, avoid generic answers about what a hard worker you are. Instead, again, answer the question in the context of how you will provide value.</p>
<h4 id="heading-behave-professionally-please">Behave professionally (please!)</h4>
<p>This might be the one that is the most annoying to an employer. You need to act like you are taking the opportunity seriously.</p>
<p>Here are two examples of people I’ve interviewed where the problems are obvious. The first individual who managed to immediately disqualify himself strolled in with his sunglasses on the top of his head and a frappuccino from Starbucks in his hand.</p>
<p>The second was a virtual interview. When I started the interview by saying “hi [name of person]”, he responded by saying “Hey brother!” Do I really need to say why neither of these individuals were considered?</p>
<p>Show up for the interview dressed appropriately. This is true whether the interview is in person or virtual. Also, if it is a virtual interview, make sure you’re in a quiet place with an appropriate background. Refer to the interviewee as Mr. [Name], or Mrs. [Name], until they tell you to call them by their first name (note: if you annoy them enough they might not say this).</p>
<p>When you introduce yourself, make sure you thank them for taking the time to interview you and thank them again upon completion.</p>
<p>Don’t make inappropriate jokes or comments during the interview either. While I think these things are “common sense,” I’ve come to the conclusion that such “sense” is not actually “common.”</p>
<h2 id="heading-conclusion">Conclusion</h2>
<p>If you are wondering whether you should become a programmer, then the first step is determining whether it is a profession you would be interested in and would otherwise enjoy.</p>
<p>Next it is important to determine which type of developer you would like to be. Because you must support yourself, it is also important to understand career possibilities within the field.</p>
<p>Finally, handling an interview correctly will put you ahead of more people than you may think.</p>
<p>Hopefully you found this article helpful when you're making your career decision. Happy coding!</p>
<h2 id="heading-about-me">About Me</h2>
<p>I am a front-end developer and the founder of <a target="_blank" href="https://www.modern-website.design/">Modern Website Design</a>. I enjoy writing on business/employment related issues and believe strongly that the world’s problems are solved through entrepreneurship. To keep up with my babbling, follow me on <a target="_blank" href="https://twitter.com/Luke_Ciciliano">Twitter</a>.</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ How to Get Ready for a Job in Tech – Tips for Beginners ]]>
                </title>
                <description>
                    <![CDATA[ A few months back, I was invited to talk to a group of engineering students of a renowned college in India. I was supposed to interact with them, motivate them, and finally tell them, "What does the industry (the "job" world) look like?", "How can yo... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-get-ready-for-a-job-in-tech/</link>
                <guid isPermaLink="false">66bdffdc8c9c9099893ce78c</guid>
                
                    <category>
                        <![CDATA[ career advice ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Career development  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Job Hunting ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Tapas Adhikary ]]>
                </dc:creator>
                <pubDate>Thu, 14 Apr 2022 17:05:57 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/04/1.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>A few months back, I was invited to talk to a group of engineering students of a renowned college in India. I was supposed to interact with them, motivate them, and finally tell them, "What does the industry (the "job" world) look like?", "How can you get ready for it?"</p>
<p>After spending 15+ years developing software, releasing products, managing teams, clients, and expectations, I had a bagful of thoughts to share with the younger generation. </p>
<p>Fortunately, I was able to summarize everything in eight high-level points without making my audience bored with it.</p>
<p>I will share those points in this article to help you better prepare for the upcoming opportunities and challenges. All the points mentioned in the article apply to everyone, irrespective of their current experience in the industry. </p>
<p>Wherever I mention the term "industry" in this article, I mean the "Software Industry" as my experience relates directly to it. Happy reading!</p>
<h2 id="heading-there-are-three-types-of-people-in-the-industry">There are Three Types of People in the Industry</h2>
<p>We can categorize people working in the software industry into three major groups.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/2.png" alt="Image" width="600" height="400" loading="lazy"></p>
<ul>
<li><strong>Following</strong>: People who need career guidance and a path defined to accomplish their career goals. They are seeking feedback and validation from people already doing the required things to grow in the industry.</li>
<li><strong>Doing</strong>: This set of people is already doing things needed to grow in the industry. They stay <code>relevant</code> to the latest and greatest things out there. They sharpen their <code>skills</code> periodically and help their followers grow by sharing knowledge and information. There are fewer people in this category than in the <code>Following</code> category.</li>
<li><strong>Doing + What's Next?:</strong> This set of folks are not only doing things but also creating specialities for the future. They cultivate visions of  <code>what's next?</code> and work towards it with a lot of <code>passion</code>. Their efforts don't necessarily have to result in some extraordinary output, but they keep trying. Again, fewer people are in this category than we discussed previously in the <code>Doing</code> category.</li>
</ul>
<p>Please note that these categories don't determine who is senior or junior in the industry or the organization. Instead, these categories exist in all job grades, levels, and work functions.</p>
<p>Also, the exciting thing is that a single person can play their part in all three categories based on situation, skill, and context. </p>
<p>For example, Ms X is <code>doing</code> an excellent in web development technologies, solving problems, and creating tools to help things in the future. She is now starting her blogging journey to share her knowledge widely. She is learning from the technology blogging community by <code>following</code> established bloggers.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/ladder.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>So how do we make sure that we constantly build our presence in these categories and move the needle to get into the <code>Doing</code> and <code>Doing+ What's Next</code> phases?</p>
<h2 id="heading-8-tips-to-help-you-advance-your-coding-career">8 Tips to Help You Advance Your Coding Career</h2>
<p>Yes, I want to summarize my tips into eight crucial points to focus on. You may be doing some or all of these already or haven't started on them. Either way is fine, and I hope it encourages you to step up further from here.</p>
<h2 id="heading-1-build-habits">1. Build Habits</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/4.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Our <code>habits</code> drive us in our life. We build many of them unknowingly, and we have to build some consciously. </p>
<p>A good habit helps you develop the right attitude towards solving problems, handling challenging situations, and making better decisions. It helps you set rational targets and get close to them. People with good habits are organized, thoughtful, approachable, and have a positive mindset.</p>
<p>So what are some of the good habits? There are plenty, and here are some basic ones.</p>
<ul>
<li>Reading</li>
<li>Writing, taking notes</li>
<li>Physical exercise</li>
<li>Setting a schedule</li>
<li>Getting organized</li>
<li>Saving money</li>
<li>Learning</li>
</ul>
<p>Build habits, good ones. It will set the stage for you to decide between good and bad, short term and long term, dos vs don'ts, and right vs wrong.</p>
<p>But, how do we build good habits? Well, I can write a few articles on this topic alone, but I'll emphasize these points for now:</p>
<ul>
<li>Find a habit and a reason why you want to build it. What's the end goal?</li>
<li>Find a trigger for it. A trigger motivates you to start and pushes you to stay on it. For example, listening to music could trigger starting physical exercise.</li>
<li>Plan for it knowing your limitations and all the chances you have of failing.</li>
<li>If you failed to sustain the habit, think about what went wrong. Do you need it? Readjust, replan and start again.</li>
</ul>
<h2 id="heading-2-find-your-passion">2. Find Your Passion</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/5.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Your <code>passion</code> keeps you going and helps you live a motivated professional and personal life. Passion is an "individual" thing that may impact many people in your circles. You can be passionate about technology, health, writing – anything that you love to do constantly.</p>
<p>However, one piece of advice I got early in my career was, "don't follow your passion blindly". The passion should be linked with your goals, career, and work. It is essential to find the difference between a hobby and a passion. You may have a hobby unrelated to your career, but your passion should relate to it.</p>
<p>It is essential to identify your passion, fuel it with a lot of practice, and renew it from time to time.</p>
<h2 id="heading-3-connect-with-people">3. Connect with People</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/6.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p><code>Social networking</code> for developers and the <code>developer communities</code> are influential in building your career. You get to meet like-minded people, find role models, get opportunities to collaborate, learn, and find jobs.</p>
<p>Whether you are a student, a fresher, or a veteran professional, social networking for developers is undoubtedly a great option to consider. The platforms like <a target="_blank" href="https://twitter.com/">Twitter</a>, <a target="_blank" href="https://linkedin.com/">LinkedIn</a>, <a target="_blank" href="http://showwcase.com">Showwcase</a>, and <a target="_blank" href="https://polywork.com/">Polywork</a> are great ones to check out. You can connect with people of interest, learn from them, and contribute.</p>
<p>Learning and sharing is a wonderful cycle that builds knowledge. It grows when we come out of silos and learn in public. Also, learning from the experience of others will accelerate our growth. So, connect.</p>
<h2 id="heading-4-stay-curious">4. Stay Curious</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/7.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p><code>Curiosity</code> is the desire to learn something new. Stay curious and be open to learning. Curiosity brings questions and doubts to mind. The fun is in finding the answers. </p>
<p>So, please ask questions when you have doubts, don't be shy thinking about whether it is a silly question, what people will think, and so on.</p>
<p>Staying curious will help you find how things work under the hood. There are many benefits of knowing the internals of things when it comes to programming. So, stay curious, and keep exploring.</p>
<h2 id="heading-5-develop-side-hustles">5. Develop Side Hustles</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/8.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Here comes my favourite point, <code>Side Hustles</code>. When you build a habit of doing things, fuel your passion directed towards the career goal, look to learn new things, and connect with people, you have an ocean of opportunities for side hustles. </p>
<p>But wait, what are side hustles, and why are they needed? Don't we have enough things to do already? Yes, very practical questions. Let's get to them one by one.</p>
<p>Side hustles are anything you do outside of your regular job to earn knowledge, reputation, money, and growth. There are various form of side hustles like,</p>
<ul>
<li>Contributing to the open-source projects</li>
<li>Writing articles on a blog</li>
<li>Mentoring</li>
<li>Teaching</li>
<li>Freelancing</li>
<li>Community Building</li>
<li>Releasing books, e-books</li>
<li>Speaking at conferences</li>
<li>Creating video content...and many more</li>
</ul>
<p>Now all these need time, and of course, you might have something called a "primary" job to take care of. However, most of the above don't need a massive amount of time or dedication. Also, all of these can be the by-product of your "primary" job. </p>
<p>Let's take a few examples:</p>
<ul>
<li>Have you solved a technical problem at work? Write about it as an article. Create a video explaining the steps and upload it on YouTube. Share about it on StackOverflow, the Showwcase community, Twitter, and LinkedIn.</li>
<li>Do you have expertise in specific areas and have taken many notes on problem-solving? Move them to a doc and release them as an e-book. Don't worry about who will make use of them. There is always a great demand for quality content.</li>
<li>Do you love to teach? Spend 1 hour over weekends interacting with people interested in your areas of expertise. Speak about the topic at a conference.</li>
</ul>
<p>It is the right thing to do if you can manage side hustles without burnout. I have captured some of my personal experience doing <a target="_blank" href="https://blog.greenroots.info/why-do-you-need-to-do-side-projects-as-a-developer">side projects as a developer here</a>.</p>
<h2 id="heading-6-dont-neglect-soft-skills">6. Don't Neglect Soft Skills</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/9.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p><code>Soft skills</code> are all about how humans interact with other human beings at work, in personal life, anywhere in the world, and in any possible modes (physically, remotely, virtually). Unlike technical skills, soft skills are less about learning and more about realizing.</p>
<p>Here are a few soft skills that need special attention,</p>
<ul>
<li>Patience</li>
<li>Empathy</li>
<li>Problem solving</li>
<li>Communication (not just the spoken or written language – it includes body language, confidence, resolving conflicts, and more)</li>
<li>Teamwork</li>
<li>Owning up to your mistakes or accountability</li>
<li>Time management - we will talk about it in a while.</li>
</ul>
<p>Some classes and courses teach you many of these soft skills. But you need to work on closing the gap yoursef and improve upon these skills gradually.</p>
<h2 id="heading-7-manage-your-time">7. Manage Your Time</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/10.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Let me start with a confession. I'm still learning how to manage time, but the good news is that I'm getting better at it. </p>
<p>Each of us has 24 hours in a day. So we need to manage all our activities in that duration. However, the problem comes with too many things to fit in that duration.</p>
<p>Here are some practices (principles too) I've been following and seeing good results.</p>
<ul>
<li>Everything is not crucial to us every day. The tricky part is that we assume that something is essential until we give enough thought to it.</li>
<li>So, we need to think and prioritize. It also includes regular activities like sleeping, exercise, eating food on time, health, family care, and so on.</li>
<li>Do not focus on things that are of lower priority priority or can wait for the next day or week.</li>
<li>Do not multi-task. It only increases stress and reduces productivity in the long run. Take up a task, focus on it in a time-boxed manner, complete it, and then get to the next one.</li>
<li>Take breaks between task switches. Rejuvenate and energize yourself.</li>
<li>If something is taking more time than anticipated, accept that it happens. You may not meet your time management plan every day.</li>
</ul>
<p>I hope these pointers help you with enough thought processes to start managing time better.</p>
<h2 id="heading-8-find-a-mentor">8. Find a Mentor</h2>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/04/11.png" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Do yourself a favour. Find a good mentor. Learning from someone's knowledge and experience is immensely beneficial. So let's understand who a mentor can be, what their role is, and how we can benefit as mentees.</p>
<p>A <code>mentor</code> is a person who provides guidance and advice to you to make your aspirations a reality. It could be for career-building, learning a new area, understanding the business processes, and many more. </p>
<p>A mentor may help share experiences and resources, provide motivation, and set and track individual and project goals. A mentor can also be a teacher, but in most cases, teaching focuses on "how," and mentoring focuses on "why". </p>
<p>A <code>mentee</code> is a person who is being mentored, guided, and advised by a mentor. A mentee approaches a mentor with aspirations, ambition, and desire. The mentor guides the mentee to help them achieve their goals. </p>
<p>The mentee drives it to success with the mentor's help in a mentoring program. The mentee decides how much help and guidance they need to achieve the mentorship goal.</p>
<p>A mentor and mentee relationship should be beyond just the technology and project knowledge sharing. It is also about understanding each other's emotional space to achieve the mentoring goals.</p>
<p>Now the most crucial part is <code>finding a good mentor</code>. Several platforms offer mentorship. There are some great mentors creating values for many aspiring people. You can always try your luck and find the best connection. I feel it is more authentic if you find someone from your network or community circle whom you know personally. That may even work out much better.</p>
<h2 id="heading-in-summary">In Summary</h2>
<p>To summarize, focus on these points with all the pointers we have discussed in this article:</p>
<ul>
<li>Build good habits.</li>
<li>Find your passion carefully.</li>
<li>Connect with like-minded people and build your network.</li>
<li>Stay curious, and keep learning.</li>
<li>Use side hustles to grow.</li>
<li>Soft skills are essential.</li>
<li>Learn to manage your time.</li>
<li>Find a mentor.</li>
</ul>
<h2 id="heading-before-we-end">Before We End...</h2>
<p>I hope you found this article insightful and that it helps you to prepare better in your career. If you want to discuss further or just want to have a career chat, you can ping me with a DM on <a target="_blank" href="https://twitter.com/tapasadhikary">Twitter</a> or <a target="_blank" href="https://www.linkedin.com/in/tapasadhikary/">LinkedIn</a>.</p>
<p>Let's connect. I share my learnings on JavaScript, Web Development, Career, and Blogging on these platforms as well:</p>
<ul>
<li><a target="_blank" href="https://www.youtube.com/tapasadhikary?sub_confirmation=1">Subscribe to my YouTube Channel</a></li>
<li><a target="_blank" href="https://twitter.com/tapasadhikary">Follow me on Twitter</a></li>
<li><a target="_blank" href="https://github.com/atapas">Side projects on GitHub</a></li>
<li><a target="_blank" href="https://www.linkedin.com/in/tapasadhikary/">Connect on LinkedIn</a></li>
</ul>
<p>See you soon with my next article. Until then, please take care of yourself, and stay happy.</p>
 ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
