I believe in full stack developers
Sorry for the lack of posts in november. I caught a nasty man-cold three weeks ago, and I am still not back to my normal self - meaning that all my energy goes to work and family. I’m sure you understand.
Lately I have seen a lot of bashing of full stack development. I hear about people saying that you need to specialize and that you can not be a full stack developer in 2014. I disagree.
What is a full stack developer?
I am in the web development business, and for me a full stack development is the ability to create a product from start to finish. I do not include design in full stack development, but of course it is a bonus if the end result does not look like it came out of the wrong part of your dog.
A full stack developer example for Ruby on Rails would be the following skillset:
- Ruby / Rails (backend coding)
- Minitest (testing)
- PostgreSQL (database)
- HTML (frontend structure)
- CSS (frontend styling)
- Javascript (frontend functionality)
- Ubuntu server (deployment)
- Git (version control)
Each bullet point above can be specialized further with specific frameworks and versions, but that is not my point. Are you as developer comfortable with building an app from ground up? Great, you are a full stack developer.
Most of the technologies above can be replaced with something else. Replace Ruby with Python or C#, CSS with Sass, or Git with Mercurial, or Postgres with MongoDB. If you can do the whole chain you can always exchange one tool with another one.
What about mobile development? Or cross platform?
You can be a full stack mobile developer, or a full stack android developer. Full stack does not mean that you know every technology and language known to man. If you can build and deploy a mobile app for iOS from the ground up, then you are a full stack iOS developer.
What can I improve?
Most of the time I see people that don’t try to improve in one or more of the parts of their stack, which means that they are slowly giving up their full stack title.
It is okay to specialise. In some companies with huge products it is good to be the expert in one technology. A guy or gal knowing every in and out of CSS3 on Internet Explorer 8 can be invaluable to a company. That said – don’t give up your full stack skills. Know enough about the skillset you need to have in order to develop an app, website or webapp from scratch.
If nothing else it will help in understanding what challenges your colleagues are facing when they are doing their specialized work.
Are you a full stack developer? Describe your stack!