There are many questions that can help you decide whether you want to be a front-end or back-end developer.
Do you enjoy making user interfaces that people will interact with? Do you enjoy taking a mockup and turning it into reality? Those traits are more indicative of a front-end developer.
[bctt tweet="If you enjoy making user interfaces, you could make a great #frontend dev, says @mikeisman" username="StartupInst"]
On the other hand, do you enjoy thinking about how to model data? Do you like figuring out algorithms and making complex systems faster? That sounds more like a back-end developer.
[bctt tweet="If you like to model data and understand algorithms, you're cut out for a #backend dev—@mikeisman " username="StartupInst"]
In reality, the distinction isn’t always that clear. There is a third choice known as a full-stack developer, someone who does both front-end and back-end development. Unless you are in a big company with many specialists, most people you’ll come across are full-stack developers. While we all have our favorite parts of the web stack that we enjoy working with, as a modern web developer you should at least be familiar with the full stack so that you know what’s going on in each part of the code base.[bctt tweet="A modern web developer should at least be familiar with the #fullstack, says @mikeisman" username="StartupInst"]
My path to becoming a professional developer dropped me right into the deep end of the full stack, prototyping MVC frameworks for a company using an old version of VB. I had to quickly learn how things worked back to front, from writing code in the models to get data from the database all the way up through presenting that data with HTML and CSS in the views. It was a great learning experience that helped me understand what it took to get the job done in the front end and in the back end.
In my career since then, it has become clear that I enjoy back-end development much more, because I like the challenges of designing data architecture, writing efficient algorithms, and scaling the server code more than translating designs into front end code or refining user experience.[bctt tweet="I prefer the #backend: I like data architecture, algorithms, scaling the server code —@mikeisman" username="StartupInst"]
You should try to get involved in everything when you’re first starting out as a web developer. You’ll find technologies, patterns, tools, and tasks that you enjoy more than others. That experience can help you decide later on what to focus on and where you want to dive deeper.
[bctt tweet="Try to get involved in everything when you’re first starting out as a #webdeveloper —@mikeisman" username="StartupInst"]
You will need to be a generalist if you work at a startup, where there usually aren’t enough people to employ specialists dedicated exclusively to the front or back end. And even at more mature companies like Hudl, our engineering team is full of full-stack developers who are strong in both the front end and back end.