Tech is a varied and rewarding industry that not many people outside of it realise. To help shine some light on what it's like to work in tech, we sat down with a senior backend developer to give you a feel for what it's like to work in such a technical field.
What is a backend developer?
That's a question I hear a lot! A backend developer's job is to build and maintain the technology that sits behind and powers a website or an app. Basically, I do the magic stuff that makes things work. It's all about understanding how things fit together and manipulating data to get things working.
How did you get into development?
I've always been what you might call your archetypal nerd. I was into computers and video games from a young age and I learned to code so I could build my own games and fiddle with the games I had. Building mods for games was one of the ways I learned the fundamentals of coding.
What do you enjoy the most about your job?
Delivering a finished project to clients is always a satisfying feeling too. Applying my skills to new technologies and then seeing the culmination of my efforts realised in an end product is what it's all about. I love seeing how things fit together and using strings of logic to make things work.
What are the downsides of the job?
Managing expectations. We work on big projects with complex timelines and sometimes it's tricky to explain what we're doing to stakeholders who don't have a grasp of the basics. It's important to get everyone on board with a project because often times, it's the stakeholders who will be using the app we build on a day-to-day basis.
What have you learnt during your time as a developer?
The main thing I've learned, besides all the languages and technologies, is that building something takes time and requires teamwork. Development isn't like sitting in a basement on your own, coding all night long like in the films. It's a collaborative process, that needs to flow naturally.
What skills are important in order to become a developer?
Problem solving. Backend dev work is all about logic, but being able to get creative with your solutions can lead to real breakthroughs. You also need to know your stuff. On any given project, you'll use PHP, Ruby, Python, Java, and .Net to build an application, and tools like MySQL, Oracle, and SQL Server to find, save, or change data and serve it back to the user in front-end code. You'll also use PHP frameworks like Zend, Symfony, and CakePHP. Then there's SVN, CVS, or Git; and of course Linux. That's a lot of acronyms, but those are essentially tools and languages that we use to get things to do the things we want them to do.
What advice would you give to anyone who wants to become a software developer?
Learn to be a team player. Languages and technologies, you can learn, but you need to have the right attitude if you want to want to be successful. Project development principles are more and more about working in collaboration with your team.