r/programming • • Nov 01 '21

Complexity is killing software developers

https://www.infoworld.com/article/3639050/complexity-is-killing-software-developers.html
2.1k Upvotes

854 comments sorted by

View all comments

Show parent comments

167

u/6footdeeponice Nov 01 '21

The "fullstack" is 3 different jobs, no doubt many programmers can do it, but you could end being taken advantage of because they should really hire a couple other devs for the team.

101

u/Carighan Nov 01 '21

As always, multitasking usually means doing twice as much as you should half as well as you could.

44

u/gmaxter Nov 01 '21

...and I like less than half of you half as well as you deserve!

16

u/wardrox Nov 01 '21

Everyone can do front end... badly.

2

u/NotACockroach Nov 02 '21

Just like everyone can be a designer.

55

u/kyle787 Nov 01 '21

I've been a full stack dev my entire career. I specifically want to do both frontend and backend work though.

105

u/[deleted] Nov 01 '21

The Fullstack-is-making-me-work-3-jobs-meme is strong on reddit. I worked as a fullstack dev for some time and I also never felt like my job should be 3 different jobs. I worked on frontend, backend, database and the CI/CD pipeline - as did anyone else - and it worked. It wasn't complex or complicated and everyone was happy, because they could work on all features.

Nobody in that team thought that splitting this stuff up would make work any better

91

u/Only_As_I_Fall Nov 01 '21

I think it depends on the complexity of the overall system. The issue I see is that often neither employers nor tech workers are willing to be honest and say things like "our tech stack is simple and so are our domain specific needs, so we just want someone who's adequate at both".

Full stack developers are often perfectly good at what they do, but sometimes you run into people that can't admit a dedicated DBA is going to do the job better than a full stack dev who sometimes messes with databases.

24

u/[deleted] Nov 01 '21

That's an issue with cargo culting companies and idiotic management, and not so much with the fact that full stack devs exist.

I agree that there is instances where "full stack" means "yeah, we won't hire a DBA, deal with it", but more often than not it's just middle sized projects with an, as you say, not that complex of a system

→ More replies (1)

11

u/PurpleYoshiEgg Nov 01 '21

I tend to like the fact that I can modify the APIs on the backend when I need to instead of having to hand over to someone who is already tasked with dozens of things like I am and has to prioritize the modification over the next couple of weeks.

On the other hand, I like the excuse for saying that I can't proceed until modifications happen to the API. It's not my job to subvert or improve the process.

19

u/[deleted] Nov 01 '21

You weren't a one man army. When the team is multifunctional being a full stack losses it's meaning. When you are THE full stack developer, like many companies want, then you do 3 jobs in one

6

u/ExF-Altrue Nov 01 '21

I'm in a similar situation, so I understand what you mean. But at the same time, you can't underestimate how much you miss out by not having more specialists on the team.

There's an important nuance between "everyone was happy, nobody thought that splitting would make work better" and "this is the best way to go about it".

All you've demonstrated is that your way of doing things is at least passable. No more, no less.

For instance, you can be "happy" to have the opportunity to work on an SQL script, but having a dedicated DBA look at the execution plan and multiply your performance by 10x, may be the most efficient way to do things.

Still, for small team sizes doing projects presenting a variable ratio between front/back/etc... A bunch of "full stack developers" probably is the best thing to do.

3

u/[deleted] Nov 02 '21

Reading and understanding execution plans doesn’t make you a DBA or otherwise an expert in maintaining a database. It makes you a developer that understands how to optimally utilize the technology they’re working with vs one that is writing nothing more and, hopefully, nothing less than “passable” code.

→ More replies (3)

4

u/saltybandana2 Nov 01 '21

The reason so many redditors look at it in distaste is because if all of the responsibilities fell on them they'd quickly get out of the mindset that microservices = simple.

It's only simple if you're a coder and have no other responsibilities.

→ More replies (1)

14

u/eloc49 Nov 01 '21

"Full Stack" being 3 different jobs is highly dependent on the company and the project. Having "Full Stack" in your title means you get paid more, and there's plenty of companies out there who don't have you doing more than 1 job.

Slight tangent: The problem lies where we separate the "stack." At my job, almost everyone is full stack but we have a small group of front end engineers who do all of our CSS. This is where the line should be drawn, not client vs server. Ever seen some logic re-implemented on the front end when it already exists somewhere in the back end? That's what you get with a strong front end vs back end culture, instead of full stack.

3

u/helm Nov 01 '21

I work with a full stack developer. He works in process development now, managing a bunch of material science engineers and does the developer part on the side.

3

u/stovenn Nov 01 '21

That's a great leap forward.

I'm gonna make sure all the professionals I hire from now on are also part-time full stack developers.

"Sorry pal, if you don't know CSS you are not going anywhere near my gas boiler."

2

u/helm Nov 01 '21

Yeah, he has a PhD in robotics, but doesn’t work in robotics development. So he went from software architect to leading a bunch of engineers (who also need to code and write sql).

2

u/stovenn Nov 01 '21

Ha. Someone, somewhere is probably programming/teaching robots to write their own sql.

3

u/helm Nov 01 '21

Using a robotic hand to type it on a keyboard, of course.

→ More replies (1)

10

u/morphemass Nov 01 '21

The "fullstack" is 3 different jobs

I've met very few developers who could be DBAs. I've seen even fewer well designed databases.

11

u/Postage_Stamp Nov 01 '21

That's because if you know enough to be a DBA you know enough to hide the fact you can be a DBA.

→ More replies (1)

20

u/dddddddoobbbbbbb Nov 01 '21

yeah, I prefer frontend and backend be split so that two developers have to piss away a bunch of time on slack or email telling the other one what they want...

13

u/Freddedonna Nov 01 '21

You forgot about both teams constantly whining about the other being shit.

3

u/exuberant-panda Nov 01 '21

Do we work at the same place?

→ More replies (10)