Hacker News new | ask | show | jobs
by KronisLV 1366 days ago
> Creating ways for people to interact and control a computer by writing but who don’t need to know about deploying to production, scaling databases, managing memory resources, etc, seems like a good division of labor.

I guess it depends on the domain and the lines along which you want to divide your project along. If someone can write back end code but doesn't really know that much about databases, you might end up with an application that does hundreds of database queries just to display one application view or prepare a REST query response.

If someone counts as a full stack developer but ends up producing a singleton app that cannot scale to more than one instance (e.g. stores important data in application memory, even things like user sessions), then you also probably have a bit of a problem on your hands.

If someone counts as a DevOps engineer but doesn't think too much about security, you might end up with a database instance that's publicly available, increasing the attack surface of your system a whole lot.

You can have a division of technical and non-technical folks, you can have a division between the different types of technical folks, but you absolutely do need at least someone who can wear all of the different hats (e.g. partake in a particular role) out there, in addition to them being present at the correct time to bring up things that are actually (or should be) blockers, which would otherwise get overlooked and would result in a horrendous implementation.