Hi Yves - great question!
Here are three considerations that come to mind for preparing for a career in software development that you could consider:
- Decide which programming language(s) you would like to focus on - There are thousands out there and they come and go overtime! There are tracker sites like https://www.tiobe.com/tiobe-index/ (google other trackers for a general view) that track the popularity of programming languages. This can help you get an indication of which languages are popular and in demand within the job market, and so give you an idea of what potential employers may need/want today and tomorrow.
- Build your own stuff in your spare time! - After you know the programming language(s) you would like to focus on, learn as much as possible about them and build something (YouTube and Googling are a great starter), there is so much free content out there! To help you get your first job a huge step up would be to have actually learnt a programming language beyond the classroom and have built something that you could share and talk with a potential employer about. Having a small portfolio of 'apps' you have written is a great benefit and can make you stand out from the crowd during interviews. The apps don't need to be fancy either, just something simple, but shows you can apply what you have learnt!
- Be familiar with an agile mindset/methodology - Every company will have a set of processes and activities to follow in order to create and build applications. In technology particularly, the agile approach is an increasingly popular choice for software developers to be involved in and follow - I would recommend checking this out and being familiar with one of the agile methodologies (like SCRUM) and the agile mindset as it will help you in interviews and help jumping into working with your first team if they follow this!
Oliver recommends the following next steps:
Best of luck getting started!
And when you start your career, you should have already known what kind of software will you build, in that stage I recommend you to get familiar with the most popular frameworks in your industry ASAP. Proficiently use of those tools will help you to save plenty of time and then you have the chance to learn more techniques for your career growth.
I would also add that the field changes rapidly so being passionate about learning and growing is critical. I would recommend reading "Cracking the Coding Interview" by Gayle Laakmann McDowell. The first three chapters provide great advice on how to prepare for interviews (the rest of the book has coding questions in various areas). I would also strongly recommend doing internships at more than one company if that is available to you (I have had many interns work for me over the years and those that worked at more than one company learned a great deal about what it is like and what they are interested in doing).
2. Build small proof of concept: Now that you have a basic understanding of a single programming language, it's time to put that understanding to work and find out where your gaps are. The best way to do this is to try and build something.
3. Learn a framework: Pick a single framework to learn that will allow you to be productive in some environment. What kind of framework you choose to learn will be based on what kind of developer you want to become.
4. Learn structural best practices: At this point you really want to focus your learning on the structural process of writing good code and working with existing systems.
5. Learn a second language: If you spend time in a new language and programming environment, you'll begin to see things in a new way
6. Learn design best practices: You should be ready to build systems by now, but now you need to learn how to design them.