Personal Project to do for December for resume+interviews, what to pick?
Personal Project Ideas for December: Enhancing Your Resume and Technical Skills
TL;DR: A software engineer seeks to transition into hardware and is contemplating various projects over December to build skills and enhance their resume while preparing for upcoming interviews. With ten years of experience as a systems test engineer, they are particularly interested in automotive, robotics, and green tech.
December is an excellent month for self-improvement, especially for those in the tech industry. It’s a time to reflect on your career trajectory and pivot into new domains. For those like our software engineer friend, the desire to deepen hardware expertise amidst a backdrop of software proficiency presents both an exciting challenge and an opportunity for growth.
The Dilemma: Hardware vs. Software
With a decade of experience in systems testing, this engineer has faced the common “chicken and egg” problem: needing hands-on hardware experience to transition into areas like automotive and robotics while finding few opportunities to gain that experience. Their current contract ends in December, and with hiring slowing down for the holidays, they’re keen to utilize this time effectively—balancing Leetcode preparation with tangible, skill-building projects.
Project Options: A Closer Look
The engineer has several intriguing project ideas related to their passion for electric vehicles (EVs). Each project presents a unique challenge and opportunity to learn:
-
Synthetic Sound Generator for EVs
This project involves using PureData on a Raspberry Pi 4 (RPi4) to create synthetic sounds for the EV, incorporating fast-response CANbus traffic. While this project is creative and innovative, it also requires a solid understanding of audio processing and real-time data handling. -
Synthetic Shifting System
By modifying a Simulink model to run on the RPi4, this project simulates a manual transmission system. It will interpret CANbus data and throttle position to manage motor controller parameters. While potentially complex, it offers a chance to delve into both control systems and embedded programming. -
Autonomous Driving System for a BMW Wagon
Reviving an abandoned OpenPilot project to enhance an older BMW model with L2 autonomy is an exciting prospect. It combines practical application with a significant learning opportunity in vehicle control systems, and the payoff of a less laborious commute adds a personal incentive. -
Leetcode Grind
While the engineer recognizes the necessity of algorithm practice, they also acknowledge the mental toll that comes with pure Leetcode preparation. Engaging in an actual project not only breaks the monotony but also provides concrete skills that can be showcased in interviews.
Choosing the Right Project
From experience, it’s crucial to select a project that can be reasonably delivered within the month. Here are some thoughts to guide the decision-making process:
-
Scope and Feasibility: Choose a project that aligns with your current skill set but still pushes you to learn. For example, the synthetic sound generator might be less daunting than the synthetic shifting system, given the complexity of integrating Simulink with hardware.
-
Time Management: Allocate time for both project development and interview preparation. Prioritize tasks that are achievable and can be completed in stages. This approach reduces the risk of feeling overwhelmed.
-
Incremental Learning: If the project seems too large, consider breaking it down into smaller milestones. For instance, if opting for the synthetic shifting system, start with basic CANbus communication before diving into control algorithms.
-
Passion Projects: Ultimately, choose a project that excites you. Whether it’s the thrill of developing an autonomous system or the satisfaction of creating a unique sound generator, passion will fuel persistence.
Conclusion: A Call to Action
With the month of December approaching, it’s time to take a step back, reflect on your goals, and invest in personal growth. Whether you choose to embark on a hardware project or delve deeper into algorithmic challenges, the important thing is to balance your time effectively.
Engaging in a project not only enriches your resume but also adds valuable experience that can be discussed in interviews, demonstrating your initiative and capability to learn new technologies. So, choose a project that excites you, aligns with your career aspirations, and prepares you for the next step in your professional journey. Happy building!