Do you know what it takes to create good software? It can be a huge process of planning, research, asset collection, etc. to get to a point where you can actually use the software. Most of the time the actual software developer gets involved in the project too late, the requirements are vague and incomplete. As a software developer you have to turn these project requirements into very precise code instructions that computers can understand. But that's where the main part of the work has just started. During this implementation a good software developer has to consider every possible scenario and situation that might occur in running the software. After all this work and lots of testing, the first version might be released for further testing. Then, another problem starts to occur - complexity. When the codebase grows it gets harder and harder to implement new features. This problem can be reduced by following certain design rules, but if you don’t have the right tools or not enough experience to do so, well… it takes practice.
Coding is often seen as a very boring and mathematically sophisticated process, but it has a creative side. Most of today's software has an interface for people. It could be an app on your phone, the browser or text editor on your computer, or even on your smartwatch. This leads the developer to think about how to solve a problem for the user as effectively as possible. Here is where creativity can come into play big time. There are also other aspects of creativity in software. For example, the design of certain behaviors or processes. Figuring out how to best design certain structures, what makes the most sense behind the scenes (back-end), how to automate things without having to include too much manual work and many other things.
If you were thinking that becoming a software developer is going to make you fast money, you might be right. The market is lacking a lot of developers. The local IT market in Zurich for example has a lot of jobs that require Senior Java or PHP knowledge or even Salesforce and the salaries are sometimes huge. But getting there is not easy. When I look back on my own career as a developer, I realize I never did the things that I did not like. This means I always looked for a job that fit exactly my own expectations in terms of tools and technologies used.
Of course, writing software like Instagram, LinkedIn or even your Web Browser is much harder and requires a lot of patience, planning, and teamwork. Yes, teamwork. Writing software is teamwork and a lot of fun because of that. When you write software on your own it will never be as good as it would be when you worked in a team. More eyes see more mistakes and problems, and this leads to better quality.
But there are other things you must consider when thinking about getting into coding and eventually landing a job in the industry. The most important thing is whether you can work in front of a computer for multiple hours. A lot of developers are as good as they are because they know how to help themselves solve problems on their own. One more advantage is that you could end up working remotely. When all you need is your laptop, you can easily code from anywhere in the world.
Are you intrigued? Maybe have a look at our other blog post “Why join a coding Bootcamp if the internet is full of tutorials?”. That might help you find some extra value and help you get the right sense of direction.
If you've got any questions, you can contact us on firstname.lastname@example.org!