How it is to be a full stack developer?
Not that difficult really. It definitely makes life easier as you dont have to rely on someone else to do half your work for you.
I find it excruciating to wait around till the front end guy has finished his work on some minor tweak I wanted. I just gets in the way of productivity.
Further, its less chances of communication gaps because you know the system end to end.
As for your specific questions:
-
Its not difficult switching between backend and front end technologies, you don’t really look at it as ‘Okay, I’m gonna do one hour of only backend now’ and then start working. You split up your work, plan your modules, plan the front end wireframes, backend implementation & database structure, and then start working, module by module.
-
Challenges - The most annoying thing I find is to fix teeny weeny responsiveness issues. I do the entire system end to end but the thing the client would notice is the ‘dropdown doesn’t look the same on my mobile, why is it so?’. So there’s some parts you wouldn’t like, you just have to find a way around it. Also, you don’t always remember syntaxes of every language. I sometimes have to google how to write SELECT queries!! Mainly because I use frameworks and you dont need to write pure mysql much anymore.
-
Prioritizing is difficult no matter what field you are in. Its not any more difficult because you work in 5 languages instead of just 1. Its pretty much the same. However, I prefer to take the front-end first approach and get all the design bits out of the way, mainly because thats the only thing a client will ever understand and can give feedback on. So I’ll put together all front end pages as quickly as possible, even if with lesser design & aesthetics, and make sure they are all clickable, and if the client is happy with everything then only get into the backend stuff.
Hope I could help clear some myths! Full stack devs are not necessarily super-brainy. Its just a matter of what languages and technologies you choose to learn.
Web Development inherently requires you to be well-versed in both sides. You can’t really get away with just doing any one unless you’re working in a company with clearly defined teams.