Software engineering has become one of the most competitive fields in the job market. What's remarkable is that becoming a developer has never been easier and landing a job in the most notorious companies worldwide no longer requires a degree.

As the tech industry continues to grow, standing out as a software engineer is becoming increasingly difficult. With more and more people entering the field and seeking the same jobs, it's important to ask yourself how you can differentiate yourself from the competition. What sets you apart from the hundreds of other resumes that a hiring manager will receive for a single position? What unique skills or experiences do you bring to the table ?

In this book, I will share with you the lessons and insights that have allowed me to stand out as a software engineer, from my early days as a college student to my current position as part of a the leader security company in the web 3 space, a French unicorn, at only 24. By following these tips and strategies, you too can elevate your skills, build a strong network, and increase your chances of landing your dream job in the tech industry. Whether you are just starting out or looking to take your career to the next level, this book will provide you with valuable insights and actionable advice to help you stand out from the crowd.

Chapter 1 - Guided Growth: Unlocking career success through mentorship

If you're a software engineer who wants to get ahead in your career, there's one thing you absolutely need: a mentor. A mentor is someone who can teach you new skills, challenge you to do your best work, and give you guidance and support as you navigate your career path.

It's okay if you don't find the perfect mentor right away - you might have several mentors throughout your career, and that's totally normal. Don't worry too much about finding someone with an impressive job title right away. Don’t expect the CTO of Amazon to be your first mentor as a junior developer. What's more important is finding someone you admire and can learn from. It could be a colleague or a manager at work, a professor at school, or even a fellow student (my first “mentor” was one my friends I met in college that had way more experience than me). The key is to find someone who inspires you and can help you grow as a software engineer to reach the next steps of your career.

One of the best things about having a mentor is that they can introduce you to new people in the industry. Your mentor might know other engineers, managers, or industry leaders who can help you land a job, learn new skills, or even start your own business someday. By expanding your network, you'll have more opportunities to grow and succeed.

If you don’t know anyone around you, start looking on Linkedin and connect with the people that you think can be beneficial to you. This is important to not take advise from anybody as we all have different stories, different goals, different lifestyles. Found a mentor that lives a life similar to the one you want to live. Once you've found a potential mentor, it's important to build a strong relationship with them. This means being open and honest about your goals, asking lots of questions, and being willing to listen to their advice. Remember that your mentor is there to help you, so don't be afraid to ask for guidance when you need it. A mentor will invest their time and energy in you, not only challenging you to grow but also creating an environment where they expect you to challenge them in return. This mutual exchange of ideas and perspectives allows for meaningful discussions to happen. By being prepared, open-minded, offering alternative solutions and ready to receive feedback you can create a dynamic of continuous growth.

Finally, don't forget that your mentor can teach you just as much from their successes as from their failures. Be sure to ask them about both, so you can learn from their experiences and avoid making the same mistakes they did.

In summary, either you are just starting learning coding or have several years of experience, finding a mentor is one of the most critical action you can take to bring your career to the next level. Having a mentor can also expand your network and introduce you to new opportunities. Building a strong relationship with your mentor is key, so be open, ask questions, and listen to their advice. Remember to learn from both their successes and failures. Take your time to find the right mentor who matches your needs and goals, and you'll be on your way to achieving your full potential as a software engineer.

Chapter 2 - Fuelling Growth with Freelancing: Unlocking your software engineering career potential

Once have good foundations in development, I would recommend to start working as a freelance as early as possible. It's a excellent way to gain experience and grow your resume.

My personal experience with freelancing was a game-changer. I took my first freelancing job during my first year in college as the 4th employee of a startup with only a few side projects under my belt, and it turned out to be one of the most beneficial decisions I made for my career. One of the biggest advantages of working as a freelance is that you start developing a product oriented mindset. You're not asked to just produce code, but to translate an idea into a tangible product. You need to think about the user experience, how it will be maintained, the cost, and propose different solutions for these. This helps you think beyond the code and start considering the bigger picture.

Another benefit is that working as a freelancer can help you develop an entrepreneurial mindset. You are in charge of your own company and have the opportunity to make decisions with impact, organise your time and learn to report progress.

If possible, I recommend starting your first freelance missions within a team, so that you don't have the total responsibility for the product. Then, quickly move to positions with more responsibility. If you're in college, consider working for your junior entreprise, which is also a great option.

Don't be afraid of making mistakes or not knowing everything. This is never the “perfect time” to start. The goal is to be put in situations where you have to solve problems you've never encountered before and improve the way you organise and lead a project. Mistakes will happen, and that's a natural part of the learning process.

One important note: Do not work for free at all costs. I made this mistake in the past, and it was never worth it. Your time is valuable, and even if you don't have a lot of experience, you should never undersell the value you bring to others.