As 2023 comes to a close, I find myself reflecting on my recent journey to becoming a software engineer. I was very fortunate to have strong mentorship in place, Jerome Hardaway. If I had to start my tech career from scratch, these are the exact steps I would take: 1. 𝐂𝐡𝐨𝐨𝐬𝐞 𝐎𝐧𝐞 𝐋𝐚𝐧𝐠𝐮𝐚𝐠𝐞: Focus on either JavaScript, the language of the browser, or Python, widely used in data science and AI. Excelling in one language increases your employability, as companies value deep, specific skills over a broad but shallow understanding, especially when you're starting out. 2. 𝐏𝐫𝐨𝐣𝐞𝐜𝐭-𝐁𝐚𝐬𝐞𝐝 𝐋𝐞𝐚𝐫𝐧𝐢𝐧𝐠: The most effective way I found to learn was by building real things. I started with a personal website and then developed my own REST API. It's about applying what you learn in real-world scenarios. 3. 𝐍𝐞𝐭𝐰𝐨𝐫𝐤 𝐑𝐞𝐥𝐞𝐧𝐭𝐥𝐞𝐬𝐬𝐥𝐲 𝐨𝐧 𝐋𝐢𝐧𝐤𝐞𝐝𝐈𝐧: Send 100 connection requests weekly with a 1-2 line personalized message. Seek out both senior developers and recent hires at your dream companies and people who share common ground with you, like the same school, coding boot camp, or other shared experiences. 4. 𝐁𝐮𝐢𝐥𝐝 𝐆𝐞𝐧𝐮𝐢𝐧𝐞 𝐂𝐨𝐧𝐧𝐞𝐜𝐭𝐢𝐨𝐧𝐬: Engaging with people on LinkedIn often leads to opportunities for more personal interactions. Propose a quick Zoom chat or, if local, even better, a coffee meet-up. Focus on learning from their experiences and understanding different perspectives in the industry. It's about forging real relationships, not just expanding your network. 5. 𝐄𝐧𝐠𝐚𝐠𝐞 𝐋𝐨𝐜𝐚𝐥𝐥𝐲 𝐚𝐧𝐝 𝐆𝐥𝐨𝐛𝐚𝐥𝐥𝐲: Engage in local meetups and hackathons, and when possible, attend conferences. These platforms are invaluable for learning, expanding your network, and uncovering job opportunities. 6. 𝐄𝐦𝐛𝐫𝐚𝐜𝐞 𝐎𝐩𝐞𝐧 𝐒𝐨𝐮𝐫𝐜𝐞 𝐂𝐨𝐧𝐭𝐫𝐢𝐛𝐮𝐭𝐢𝐨𝐧𝐬: Engaging with open-source projects can really open doors. It helps you understand real-world codebases, teaches collaboration, and improves your coding skills. Plus, it's a significant point of interest on your resume. 7. 𝐌𝐚𝐢𝐧𝐭𝐚𝐢𝐧 𝐚 𝐓𝐞𝐜𝐡𝐧𝐢𝐜𝐚𝐥 𝐁𝐥𝐨𝐠: Document your learning journey. Share your challenges, successes, and insights through a blog. This not only reinforces your learning but also positions you as someone who is actively engaged in the tech community. Don't like writing? You can start a YouTube channel. 8. 𝐒𝐞𝐞𝐤 𝐌𝐞𝐧𝐭𝐨𝐫𝐬𝐡𝐢𝐩 𝐚𝐧𝐝 𝐎𝐟𝐟𝐞𝐫 𝐌𝐞𝐧𝐭𝐨𝐫𝐬𝐡𝐢𝐩: As you grow, seek guidance from more experienced professionals. Equally important is to offer help to those who are a few steps behind you. This exchange enriches your understanding and builds a supportive community. 9. 𝐏𝐫𝐚𝐜𝐭𝐢𝐜𝐞 𝐂𝐨𝐝𝐢𝐧𝐠 𝐈𝐧𝐭𝐞𝐫𝐯𝐢𝐞𝐰𝐬: Practicing coding interviews can be immensely beneficial if you aim for roles in big tech companies. Practice with a more experienced friend or connection, or utilize platforms like Pramp.
Career Development in Software Engineering
Explore top LinkedIn content from expert professionals.
-
-
📍 𝗝𝘂𝗹𝘆 𝟮𝟬𝟮𝟯 𝗫𝘂𝗲'𝘀 𝗠𝗲𝗻𝘁𝗼𝗿𝘀𝗵𝗶𝗽 𝗥𝗼𝘂𝗻𝗱𝘂𝗽 A series about observations I've made this month while working with students and early career professionals. 𝟭. 𝗥𝗲𝗹𝘆𝗶𝗻𝗴 𝘁𝗼𝗼 𝗺𝘂𝗰𝗵 𝗼𝗻 𝗽𝗿𝗼𝗷𝗲𝗰𝘁𝘀 𝘄𝗵𝗲𝗻 𝘆𝗼𝘂 𝗵𝗮𝘃𝗲 𝗽𝗿𝗼𝗳𝗲𝘀𝘀𝗶𝗼𝗻𝗮𝗹 𝗲𝘅𝗽𝗲𝗿𝗶𝗲𝗻𝗰𝗲 If you have professional relevant software engineering experience, flesh those out!! Even if it’s a volunteer role, even if it was an internship. If it is relevant to the job posting, talk about it! I’ve been reviewing resumes lately that have like 5 tutorial projects on them and 1 relevant experience. The projects take up too much space and the relevant experience has max 3 bullet points. This is not enough to communicate your value as a software engineer. I’m not saying projects aren’t important. I’m saying relevant experience >>>>> tutorial projects. 𝟮. 𝗡𝗼𝘁 𝗯𝗲𝗶𝗻𝗴 𝘀𝗽𝗲𝗰𝗶𝗳𝗶𝗰 𝗲𝗻𝗼𝘂𝗴𝗵 𝗶𝗻 𝗿𝗲𝘀𝘂𝗺𝗲𝘀 I don’t want to sound mean, but your resume probably needs revisions if it’s not specific enough. Be specific with your skillset and your contributions! Sit down. Brainstorm everything you did. Pick out the most relevant and impactful contributions. My students really struggle with this and I get frustrated for them. Because you’re telling me you didn’t do /anything/ at your last job and now you want to get into FAANG. Because of… your potential? Honey, everyone has potential. What did you do with yours? Tell the recruiters about it!! ---------- These are summaries. It's always office-hours in the comment section below, ask away! Previous month's roundup: https://lnkd.in/g9VSZ-vK ---------- Here to add value to your life, thanks for following and clicking on the bell! 🔔 You have a future in tech. I help high-achieving early career software engineers land their dream job. Send me a DM, I’d love to chat! 💌 #XueShares #breakingintotech #softwareengineer More roundups are at #Xue_MentorshipRoundup
-
Hey LinkedIn Family ! As we venture through an era rich with AI breakthroughs and the rise of large language models, I've noticed a lot of concern among friends and colleagues about the future. As a Python developer, data scientist, and MLOps specialist, I've seen firsthand how the tech landscape is shifting. One key lesson that I learned through my journey : being technically adept is crucial, but it’s not the complete picture. And the more you only rely on your hard skills, the more vulnerable you become! Here's the brighter side: tech is as much about understanding the impact of our work as it is about executing tasks. It’s about seeing the bigger picture. Those who broaden their horizons beyond just code and data often find themselves in a stronger position. 🌟 My advice is simple but powerful: Lean into the career development opportunities your workplace offers. Think beyond the code! Expand your horizons to include management skills, communication, leadership, and technical writing. For those starting out as junior software engineers or data analysts, try your hand at agile management. Document your achievements and your workflows, make sure to to be vocal about your accomplishments, and make sure you’re seen—don’t just wait for tasks to come your way, actively ask for new tasks, and if you are in benches for sometimes, ask to help your colleagues in a new endeavor so that you can show your accomplishments to managers. Being visible matters. If you’re not seen by your manager, you might be overlooked when it comes to recognizing the company’s successes. Collaborate, share your successes, and ensure your contributions are acknowledged. The secret to securing your place in today’s job market? Be proactive, embrace a spirit of professionalism, and steadily ascend the leadership ladder. 🔑 Be more than unfirable. Be invaluable. #CareerDevelopment #Leadership #TechIndustry #MLOps #DataScience #ProfessionalGrowth
-
“How can I optimize my career for compensation?” There’s a common myth that job hopping is the best way to maximize your pay as a software engineer. Yes, this approach can work…for the short term. In a hot market when there’s a shortage of skilled talent, switching jobs can give you a nice boost in your pay. But, what happens when the market cools down? Who gets to stay and who is the first to be let go? It all comes down to one thing: Impact. What kind of impact can you drive for your company and how much value can you add? The uncomfortable truth is that even the most brilliant engineers and the highest performers start out with a handicap as new employees. It takes time to build expertise, establish relationships and ramp up to full productivity. And if you’ve spent your career switching jobs every 1-2 years, you may have kneecapped your career and long-term potential. Hop-scotching across jobs will limit your growth as an engineer, your ability to grow your impact, and the compensation potential that comes with both. Ironically, focusing too much on your compensation will actually inhibit your ability to command higher pay. So, what’s a better approach? Here are some core steps to get you started: 1. Have a plan. Haphazardly hopping jobs for the next shiny thing isn’t effective. But, strategically switching jobs that align with your desired trajectory is. So, have a goal for your career and a plan to get there. 2. Invest in self-development and growth. Take the time to learn new skills and expand your scope of influence. The biggest career jumps come when opportunity meets preparation. Invest in growth areas today to reap rewards tomorrow. 3. Embrace the sub-optimal path. Be open to experimentation, trial-and-error, and new directions. Focusing solely on the "perfect" career move, whether for pay or other reasons, might blind you to even better opportunities. Leave room for exploration and adjust your course as needed. A successful career is both an art and a science. The key is to focus on the right inputs: growth, impact, and experimentation. When you make the right investments, the outputs—such as financial success and career fulfillment—will naturally follow.
-
Unlocking Potential: The Path Forward for New Software Engineers 🚀🔍 Stepping into the world of software engineering is like opening a door to endless innovation and creativity. For those of you who are just beginning your journey, especially if you've recently transitioned from another career, embraced the challenge of a software boot camp, or landed your first tech role, the road ahead is filled with exciting possibilities. Here are some pivotal areas and technologies that are not only fascinating to explore but also crucial in setting the stage for a flourishing career: Data Structures and Algorithms (DSA) 🧠: A strong grasp of DSA is the bedrock of proficient coding and problem-solving skills. It enhances your ability to think algorithmically, a must-have for cracking coding interviews and excelling in your role, regardless of the programming language or technology stack you choose. Full-Stack Development 💻: Understanding both front-end and back-end aspects of web development can make you a versatile and highly sought-after engineer. Dive into frameworks and libraries beyond JavaScript, like React for front-end and Django for Python-based back-end development, to build comprehensive web applications. Machine Learning and Artificial Intelligence (AI) 🤖: The fields of ML and AI are rapidly evolving, offering new engineers the chance to work on cutting-edge projects. Python, with its extensive libraries such as TensorFlow and PyTorch, is a gateway to entering these exciting domains. Cybersecurity Fundamentals 🔐: As digital threats continue to evolve, knowledge of cybersecurity is becoming increasingly important. Understanding the basics of securing applications and data can differentiate you in a job market that values safety and reliability. Blockchain Technology ⛓️: Beyond its association with cryptocurrencies, blockchain offers a wealth of applications in secure and decentralized systems. Familiarity with blockchain concepts and smart contract development can open up opportunities in emerging tech sectors. Soft Skills and Effective Communication 💬: Technical prowess is essential, but soft skills like effective communication, teamwork, and adaptability are what make a good engineer great. These skills facilitate collaboration and innovation within teams and with stakeholders. The journey of a software engineer is one of lifelong learning and discovery. By focusing on these areas, you not only prepare yourself for the challenges of today but also for the opportunities of tomorrow. Embrace the journey, stay curious, and remember, the tech community is here to support you every step of the way. Let's build, innovate, and grow together. #SoftwareEngineeringJourney #TechInnovation #CareerGrowth