Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
prom candy
Dec 16, 2005

Only I may dance

Mega Comrade posted:

I just remember to use X for Z.

This is pretty much the extent of my knowledge. I think it's funny that coding is seen as this academic pursuit when the reality of a job is often pretty similar to a skilled trade. My good friend from childhood and I started our careers at the same time, I went into tech and him into HVAC and we compare notes a lot. We both have a ton of specialized knowledge in our field, little tricks for using our tools more effectively, understand how to break a big job up into its component parts, and also both have little academic/theoretical knowledge that would be required to actually invent the tools and systems we use. The biggest differences are that his job is physically demanding and often super lovely (working on a rooftop in -15C or +30C weather) and also that his work is actually important.

Adbot
ADBOT LOVES YOU

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

prom candy posted:

This is pretty much the extent of my knowledge. I think it's funny that coding is seen as this academic pursuit when the reality of a job is often pretty similar to a skilled trade.

It is in a lot of cases. That's why boot camps exist, they teach the practical side of the industry. College teaches the academic side. Both are important for different reasons. It's the difference between the guy who installs the furnace and the guy who designs the furnace.

epswing
Nov 4, 2003

Soiled Meat

New Yorp New Yorp posted:

It is in a lot of cases. That's why boot camps exist, they teach the practical side of the industry. College teaches the academic side. Both are important for different reasons. It's the difference between the guy who installs the furnace and the guy who designs the furnace.

Maybe another way to look at it is most developers are “the guy/gal who assembles the furnace from component parts”, and most of the time there’s either no design, or a design that sucks.

Achmed Jones
Oct 16, 2004



lol writing code is basically the grownup version of "now draw the rest of the basset hound"

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
many of the first 20 or so times they tried to automate away programmers were based upon some conceit that there were some division of touchers where some of them just did scut work and some of them were the real touchers and you just prioritize and make hierarchies. for a nice clean example of how this crashes and burns, see the failure of simonyi's metaprogrammer idea, drawn out at incredible length just because simonyi started intentional software while plutocrat-rich

bob dobbs is dead fucked around with this message at 18:09 on Jan 21, 2023

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe
Ah yes, the myth of the 10x developer. In reality, some devs are just 10x more confident/conceited than other devs.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost

TooMuchAbstraction posted:

Ah yes, the myth of the 10x developer. In reality, some devs are just 10x more confident/conceited than other devs.

the original software eng papers invariably look at tiny school-tasks and find 10x differences between the best and the worst (not the best and the middle, the best and the worst). definitely a thing in school-tasks, wouldn't you say? steve mcconnell was one of the great instigators of the saying and put serious effort into backing it up https://www.construx.com/blog/the-origins-of-10x-how-valid-is-the-underlying-research/. i don't even know if he does a bad job

but the actual categorization in putative inequality-based things is always worse-than-worthless in practice

bob dobbs is dead fucked around with this message at 20:13 on Jan 21, 2023

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
now, there's also the old team head-to-head of excel vs lotus 123 where we have extensive data of their respective 3rd versions which mcconnell notes in this other thingy https://www.construx.com/blog/productivity-variations-among-software-developers-and-teams-the-origin-of-10x/ - excel took 50 staff-years to write 650k sloc and fuckin trounce lotus 123 in the market and 123 took 260 staff-years to write 400k sloc and get wrecked in the market: notable because simonyi was on that specific team, leading excel and crushing the lotus 123 peeps

so despite the actuality of being a programmer who in a specific head-to-head instance lead a team that trounced another team doing the obscenely specific thing of spreadsheets, simonyi didn't figure out what the gently caress happened anyhow. same but harder with the other attempts

e: s/notes/123/g

bob dobbs is dead fucked around with this message at 20:30 on Jan 21, 2023

Ralith
Jan 12, 2011

I see a ship in the harbor
I can and shall obey
But if it wasn't for your misfortune
I'd be a heavenly person today

CubicalSucrose posted:

I'm a data science middle-manager at a tech company, survived this past cycle of industry layoffs (probably). Been doing LeetCode because it's kinda fun and if I do get the axe in the future I think I want to try something new/different. Though I also don't want take a HUGE pay cut and also don't want to become a PM.

If "data science manager" means "strong statistics background," I think any large company would be stoked to have you as an IC. I know my team would be. Random SWEs don't produce the most rigorous statistical analyses of production metrics.

Sivart13 posted:

maybe I'm just a schmuck but I feel like this whole thread is people looking at a the full salary distribution graph but focusing on the upper 10% to say "it's me, i'm that"

Getting into the upper 10% is mostly just a matter of knowing it exists and actively and persistently pursuing those jobs, rather than assuming you're not good enough, is the point.

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

Ralith posted:

If "data science manager" means "strong statistics background," I think any large company would be stoked to have you as an IC. I know my team would be. Random SWEs don't produce the most rigorous statistical analyses of production metrics.
Yeah absolutely.

Story time!

A little over a decade ago, I was in a software team surrounded by electrical engineers and we finally got some permission to look at non-electrical engineers to take care some of our testing infrastructural problems. We got a lady in working on a PhD in this new-fangled data science poo poo. She had done her undergrad in electrical engineering. I interviewed her for coding and she was fine. My colleague, on the other hand, thought up a more rigorous problem based on something that nailed them recently.

There was a combination of clock frequency, voltage, and temperature that was creating an anomaly that had cost the company six months and a few million to even identify, so he figured he can give her the data and start going back and forth with her on how she'd go through finding the anomaly. Instead, she takes these tables, glosses over them, points, and says, "the problem's here." Which it was. She just looked at some multidimensional data at a glance and knew from her background that the scaling of those values took a strange jump. She went on to say she could have just written some code that would have detected and reported on that as soon as the data came in. The whole thing was boring and simple to her.

She didn't get hired. At the time, data scientists were not in some magic list the company kept of technical majors, and since she was about to get her PhD, it would trump her electrical engineering undergrad, so she couldn't qualify under that. We were horrified. She was still looking for work a year later. I was thinking of quitting, starting a company, hiring her, and figuring out a business model where we just give her stuff to do and make sure she's happy.

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe

Ralith posted:

Getting into the upper 10% is mostly just a matter of knowing it exists and actively and persistently pursuing those jobs, rather than assuming you're not good enough, is the point.

This is absolutely the case. Like, you may imagine that L5 at Google is some kind of seriously above-average amazing engineer, but in reality they're just basically-competent senior devs. There's no magic there.

A lot of getting paid more is having the courage to ask for more and the confidence to make it sound like you're worth more. A lot of people are conflict-averse, and aren't willing to negotiate because it feels too much like arguing. Corporations love people like that because they can underpay them to the tune of $100k/year or more.

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


A lot of large company interview processes are designed to select candidates who come from a pretty specific background. That's good when they keep out the people you don't want, but they also tend to screen out people with an unusual background whose skillsets might complement the people you already have. I don't think it's all that unusual for teams to understand that that's a problem but that hasn't reached HR yet from what I can see.

LLSix
Jan 20, 2010

The real power behind countless overlords

TooMuchAbstraction posted:

Ah yes, the myth of the 10x developer. In reality, some devs are just 10x more confident/conceited than other devs.

Eh, I don't know about 10x, but about half the places I've worked there's been one person who gets twice as much done as anyone else on the team. In a couple of cases, they've contributed significantly more.

I did work one contract where management thought the guy who was adding twice as many bugs as the rest of the team together was the guy who was twice as productive, but I didn't stay there long for obvious reasons.

MrMoo
Sep 14, 2000

I think it's more that there are people 10x worse, which is not that surprising if you take untrained staff or those with minimal experience. In fact in going down, rather than up, it's pretty hard to hit a limit of how bad people can be.

marumaru
May 20, 2013



i've definitely seen if not 10x, 5x developers. i think they're stupid.
it's the type of person that will work their 8 hours, then do overtime for free ("i just want to get this project done, it's a big deal [for some company reason]!"), then work weekends for free ("product said we can't move this deadline! we have to make a good showing for [clients]!"), all while reading/watching work-related stuff in what little free time they have
i do not want to be a 5x developer, even though they're all way more "successful" than me (professionally)

Mega Comrade
Apr 22, 2004

Listen buddy, we all got problems!
When I started my current place I kept finding absolutely trash code, a LOT when I was dealing with old bugs that had been stuck in backlog and were regressions. All under the same name of a dev who wasn't around any more.
Eventually someone brought him up and he was regarded as this savant who would close off tickets at lightning pace, 10x or superstar wasn't used but it as implied, management loved him apparently.

Harriet Carker
Jun 2, 2009

Mega Comrade posted:

When I started my current place I kept finding absolutely trash code, a LOT when I was dealing with old bugs that had been stuck in backlog and were regressions. All under the same name of a dev who wasn't around any more.
Eventually someone brought him up and he was regarded as this savant who would close off tickets at lightning pace, 10x or superstar wasn't used but it as implied, management loved him apparently.

I wonder if you work ay my old company! :ohdear:

StumblyWumbly
Sep 12, 2007

Batmanticore!

MrMoo posted:

I think it's more that there are people 10x worse, which is not that surprising if you take untrained staff or those with minimal experience. In fact in going down, rather than up, it's pretty hard to hit a limit of how bad people can be.

This is a huge part of it, I've definitely seen a lot of useless engineers. Also, making the right decisions is important, it wastes a lot of time to go in one direction, find the problem other folks were warning you about, and then go back and fix them the right way.

Is there some specific 10x story folks are arguing about? Because it sounds like a lot of this thread is arguing that some devs are not better than others, and I have no idea where that comes from.

Designing a hiring process to only hire 10x people sounds pretty much impossible. The most useless devs I know just grinded leetcode until they got the good jobs, and I'm sure they're still useless, even tho they aren't dumb.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
mcconnells formulation is that the best peeps are 10x the worst peeps and that went through a telephone sorta process and peeps were saying the best peeps are 10x ordinary peeps

lifg
Dec 4, 2000
<this tag left blank>
Muldoon
I have worked with superstar programmers, but what made them great was they made the rest of the team better. Like they fixed a bad deployment process, or (in one notable case) introduced git to our internal team and wrote scripts to let that play nicely with our company-wide old-and-enterprisey VCS.

a dingus
Mar 22, 2008

Rhetorical questions only
Fun Shoe

Mega Comrade posted:

When I started my current place I kept finding absolutely trash code, a LOT when I was dealing with old bugs that had been stuck in backlog and were regressions. All under the same name of a dev who wasn't around any more.
Eventually someone brought him up and he was regarded as this savant who would close off tickets at lightning pace, 10x or superstar wasn't used but it as implied, management loved him apparently.


“Almost every software development organization has at least one developer who takes tactical programming to the extreme: a tactical tornado. The tactical tornado is a prolific programmer who pumps out code far faster than others but works in a totally tactical fashion. When it comes to implementing a quick feature, nobody gets it done faster than the tactical tornado. In some organizations, management treats tactical tornadoes as heroes. However, tactical tornadoes leave behind a wake of destruction. They are rarely considered heroes by the engineers who must work with their code in the future. Typically, other engineers must clean up the messes left behind by the tactical tornado, which makes it appear that those engineers (who are the real heroes) are making slower progress than the tactical tornado.” ― John Ousterhout, A Philosophy of Software Design

The rest of the book is pretty sweet too, but your description made me think of this passage instantly.

Mega Comrade
Apr 22, 2004

Listen buddy, we all got problems!
I'd not heard that term before so thanks.

gbut
Mar 28, 2008

😤I put the UN🇺🇳 in 🎊FUN🎉


If you’re not in one of those guys’ wake, you’re one of those guys.

prom candy
Dec 16, 2005

Only I may dance
It's way more fun to be one of those guys than to deal with one of those guys

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe
There's a reason why "move fast and break things" is the modus operandi of the entrepreneur. The goal is to sell your company before the reckoning comes.

luchadornado
Oct 7, 2004

A boombox is not a toy!

These last few posts are too drat real.

Lucid Nonsense
Aug 6, 2009

Welcome to the jungle, it gets worse here every day
I've had the same job for the last 10 years and am starting to look around. I updated my resume and put it out a few weeks ago, and have had 4 interviews from 12-15 applications. My current title is DevOps Manager, so am I getting hit by recruiters or is that title in that much demand?

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe
Despite the recent mass firings, tech jobs are still in big demand.

Destroyenator
Dec 27, 2004

Don't ask me lady, I live in beer
Even with the widely different meaning of “devops”, it’s generally a function that people understand they have a need for but have a hard time articulating or directing. An experienced manager who can explain what they get from it in business terms and how to manage that role is probably pretty desirable.

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

Destroyenator posted:

Even with the widely different meaning of “devops”, it’s generally a function that people understand they have a need for but have a hard time articulating or directing. An experienced manager who can explain what they get from it in business terms and how to manage that role is probably pretty desirable.

DevOps is a word that, like agile, has lost all of its meaning. What it says is that there aren't dedicated operations staff and that the developers perform the operations role. What organizations do is relabel their operations roles as DevOps and keep the wall that people throw things over.

Vulture Culture
Jul 14, 2003

I was never enjoying it. I only eat it for the nutrients.

leper khan posted:

DevOps is a word that, like agile, has lost all of its meaning. What it says is that there aren't dedicated operations staff and that the developers perform the operations role. What organizations do is relabel their operations roles as DevOps and keep the wall that people throw things over.
I apologize for probably starting this trope here, because it really isn't true anymore. The terminology has changed in ways that probably miff Patrick DeBois and Andrew Clay Shafer and a bunch of other early thought leaders, but it is at least a little bit consistent from a titling perspective.

"Operations" is a subset of activities that all people perform in the day-to-day of their work. I like the definition generally used for operations research: it's very little more than the application of the scientific method to decision-making. Elsewhere in the business, you have tons of job titles that contain "operations", and only a buffoon would think that operations in those areas is only that person's job. Wherever you work, you probably have at least a few of: Sales Operations, Business Operations, Strategic Operations, People Operations, Recruitment Operations, Clinical Operations, Plant Operations. You might even have a Director of Operations or Chief Operating Officer, who, despite their job title, is not the receiver of operations tasks thrown over the wall.

DevOps has generally gotten misunderstood and appropriated by the business world, at least in larger companies, in a very specific way: it's the application of this general usage of "operations" to the way people do development work. And very often, what you'll find in this title is the exact opposite of the problem you're putting forth: the company will "shift left" through the wanton application of dreams and wishes and prayers, throw the Terraform pipelines to individual development teams, and say "good luck" without staffing a central function that's good at any of these things. Eventually, they go, "Oh, we're actually bad at DevOps and it's making the business bad," and they start to staff a DevOps Engineer function to lay on accountability for the entire business's infrastructure[1] outcomes while not personally giving them any leverage to fix the problem.

[1] I like the modern definition of "infrastructure" as "delivery dependencies", which I pulled from "Who Should Write the Terraform?"

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

Vulture Culture posted:

I apologize for probably starting this trope here, because it really isn't true anymore. The terminology has changed in ways that probably miff Patrick DeBois and Andrew Clay Shafer and a bunch of other early thought leaders, but it is at least a little bit consistent from a titling perspective.

"Operations" is a subset of activities that all people perform in the day-to-day of their work. I like the definition generally used for operations research: it's very little more than the application of the scientific method to decision-making. Elsewhere in the business, you have tons of job titles that contain "operations", and only a buffoon would think that operations in those areas is only that person's job. Wherever you work, you probably have at least a few of: Sales Operations, Business Operations, Strategic Operations, People Operations, Recruitment Operations, Clinical Operations, Plant Operations. You might even have a Director of Operations or Chief Operating Officer, who, despite their job title, is not the receiver of operations tasks thrown over the wall.

DevOps has generally gotten misunderstood and appropriated by the business world, at least in larger companies, in a very specific way: it's the application of this general usage of "operations" to the way people do development work. And very often, what you'll find in this title is the exact opposite of the problem you're putting forth: the company will "shift left" through the wanton application of dreams and wishes and prayers, throw the Terraform pipelines to individual development teams, and say "good luck" without staffing a central function that's good at any of these things. Eventually, they go, "Oh, we're actually bad at DevOps and it's making the business bad," and they start to staff a DevOps Engineer function to lay on accountability for the entire business's infrastructure[1] outcomes while not personally giving them any leverage to fix the problem.

[1] I like the modern definition of "infrastructure" as "delivery dependencies", which I pulled from "Who Should Write the Terraform?"

I can buy into the notion of devops being a bad idea for a lot of organizations. But do we need to retitle sysops devops in the process and lose the capacity to understand that the concepts are different?

It's not generally my job function, so I probably shouldn't get mad about it. But it always seems real dumb to follow the path of "thing A seems problematic and inefficient, let's do thing B, thing B is harder than we thought so let's do thing A but keep the thing B name"

LLSix
Jan 20, 2010

The real power behind countless overlords

This is a weird discussion for me to read because I've only ever heard DevOps used in 2 ways.

Way 1: The people what keep the servers (and CI pipelines) running.

Way 2: A synonym for IT.

I can't fit either way into the ongoing discussion.

epswing
Nov 4, 2003

Soiled Meat

LLSix posted:

This is a weird discussion for me to read because I've only ever heard DevOps used in 2 ways.

Way 1: The people what keep the servers (and CI pipelines) running.

Way 2: A synonym for IT.

I can't fit either way into the ongoing discussion.

Yeah, I think the point of "DevOps" is that software developers are not only writing the software, but also configuring the servers, and keeping them running. And managing CI pipelines. And after a certain point, are basically doing "IT" in general.

This is likely typical for one-person shows, indy developers, as there's literally no one else to do those things. I've been there, I want to work on my software but I'm stuck reading about nginx config files and SPF records and Linux cron jobs and Postgres upgrade compatibility, etc, etc. Now just scale that up into established businesses with dozens/hundreds/thousands of employees, there could be people doing those things, but hey, couldn't the software developers just... do it themselves? Think of the cost savings!

epswing fucked around with this message at 19:13 on Jan 25, 2023

Guinness
Sep 15, 2004

The problem with DevOps is that it means whatever you want it to mean, ask ten people and you'll get ten different definitions. Trying to have a productive conversation about it goes in circles quickly.

The linked article about Who Writes the Terraform lays out the history and problem of it pretty well, give it a read.

Motronic
Nov 6, 2009

Devops is developers with root access to production machines who shouldn't ever have root access to production machines.

CPColin
Sep 9, 2003

Big ol' smile.
The point of the term "DevOps" is that when a server crashes, the rest of the devs can go "more like DevOops"

Vulture Culture
Jul 14, 2003

I was never enjoying it. I only eat it for the nutrients.
I have a theory that this started with Agile consultants, many of whom have gone their entire careers optimizing the makeup of their teams towards making roles completely interchangeable. It got them to a certain point of success, and when you're largely solving business problems around CRUD apps and workflow orchestration, it's easy to believe that deep technical understanding of the problem doesn't matter. Then, suddenly and without realizing it, you introduce a new domain into the team where they are no longer working in a codebase amenable to ugly hacks to Get Something Done. Instead, the workflow is defined by a bunch of black boxes that do things in a very specific, highly ordered, extremely linear way. You can't easily put in workarounds because your workaround goes in a dependency of a dependency of a dependency of your tool, and all four are written in different languages. The team suddenly needs to know a highly specialized skillset, and there are no experts, and none of the teams hire experts, because what does a CRUD workflow team need this specialized expertise for? Management hears them, and may empathize, but does not listen or care enough to be invested in solving the problem. They kick it to the part of the org closest to IT problems.

Now, all of a sudden, instead of a calculus around "how much tech debt is allowable to get this feature off the ground", you get stuck in the mud of "our entire pipeline is technical debt, it's impossible to make it do what we want, and we have to rearchitect the whole thing to deploy this one stupid change to production". This leaves you with two solution paths besides teams quietly doing the work by hand:

  • Someone becomes enough of an expert in the underlying tools and technologies to create a coherent platform out of these things, and if you're lucky, it gets close to a bunch of the business's important use cases. It's not especially flexible and can't be modified easily, so a not insignificant amount of effort is put into reshaping all the business's software into the shape of the release train's boxcar. Wham, "DevOps team".
  • The business "shifts left" by leaving all the flexibility in pipeline construction to individual delivery teams, standardizing literally nothing, or only components so low-level that they're only useful to mid-business platform teams and nobody else. Nobody on these teams can invest in learning the twelve tools written in seven languages that they need to make their two pipelines work coherently, so most things are just broken most of the time. The team toils and deploys by hand and mostly, nobody cares until the business starts to scale in a severely sub-linear way. Now it's a crisis that nobody in leadership knows how to fix, because you can't reorg your way out of "we literally never hired for this skill."

The whole thing is a mess, and the reason we're here is precisely because that old sysadmin job has stuck around all this time, cockroach mode, moving from title to title. A whole role that is so focused on understanding the intricacies of inflexible, opinionated little tools and mapping them onto the workflows of the business that there's no time for anything else. New products continue to target this market segment: people with a deep knowledge of technical minutiae, whose jobs revolve around building little couplers and adapters for services that were never really made to work together in the first place. Whereas, if the industry would grow up and start adapting towards people actually being able to get their jobs done, none of this nonsense would be necessary.

Vulture Culture fucked around with this message at 19:42 on Jan 25, 2023

epswing
Nov 4, 2003

Soiled Meat

Motronic posted:

Devops is developers with root access to production machines who shouldn't ever have root access to production machines.

I like this definition a lot.

Adbot
ADBOT LOVES YOU

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost

quote:

Whereas, if the industry would grow up and start adapting towards people actually being able to get their jobs done, none of this nonsense would be necessary.

actual architecture, a field so old that literal mammoths were still walking around when it started, cannot do this, why would we one day be able to do this

nonsense is inextricable to organizations of more than one person

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply