What Makes a Good Full-stack Developer
With modern advancements in tech, for example with javascript, more and more developers are able to apply principles they are familiar with, throughout the rest of the stack. On Angel list alone, there are over 5400 startups currently looking for full-stack engineers. Every startup needs good full-stack developers, and if you’re serious about growing your startup, you’re going to want to read on to see what constitutes a rockstar!
At the highest level, a true full-stack developer is someone who can build and deploy the entirety of an application. This person should be able to work on the front-end, backend, databases, systems, cloud and also be able to test their work. There are those who build an entire career programming in one language, usually small components of a bigger pie at large companies like Facebook, Google and Yahoo. Full-stack developers rather, are language agnostic. They’re not picky about working with Java, Rails, or Go, their primary focus is on solving problems and building robust solutions.
Language agnostic type programmers expose themselves to new technologies throughout their careers, so they can code with different points of view in mind. Why is this good for an early-stage startup you may ask? A single-minded developer will only apply technologies they are familiar with to your projects. Just because something worked for someone, doesn’t mean it will work for you. A good full-stack developer can take a problem, and based on experience, use the right technologies that are optimal to serving the needs of the end user. The correct technical decisions early on will save you thousands of dollars and hopefully lead to more profits in the long term.
If you’re growing a startup, you’re going to want one (or 10) of these folks on your team. If you’re on a tight budget, hire a senior full-stack developer first, and then build around him with contractors or junior specialists in areas you need help with. Below you’ll find a checklist of qualifications to look for in your next full-stack dev hire:
- A Computer science degree, or Graduated from a reputable coding bootcamp
- Fundamental programming and design principles
- Strong with multiple backend languages (i.e Rails, Java, Python), and at least 1 modern tech. (i.e Go, Elixir, Scala, Node)
- Understanding of the powers of javascript and knows how to apply it throughout an application. A good full-stack developer should be fluent in at least one modern framework (i.e React, Angular, backbone) and understand javascripts latest iterations (es6/es7 and beyond)
- A keen eye for design – UI/UX
- Understands data and how to store it (i.e MySQL, mongoDB), also familiar with Big Data (i.e Hadoop, Spark, Cassandra)
- Has deployed to AWS in the past and understands how to automate things with AWS, Jenkins, Docker
- Familiar with producing responsive work that is applicable across multiple mobile platforms. Whether they’ve built native apps with Swift, or hybrid apps with ionic or react native.
- Comfortable frequently testing their work, using tools like selenium
It’s impossible to be an expert in everything, but it’s important to be knowledgeable of everything. A good full-stack developer should be able to have a grasp of everything mentioned above. As you source and interview developers, make sure to dive deep into all the topics mentioned, and make sure to screen for their history of learning new languages. A good place to start is reviewing their code on their personal websites or Github accounts. If they have nothing to show, there’s your first red flag. Good luck and happy hunting!
[button color=”accent-color” hover_text_color_override=”#fff” image=”default-arrow” size=”medium” url=”https://synapseint.com/contact/” text=”Schedule a Time to Chat With a Synapse Talent Expert” color_override=””]