News for hackers. Stuff that matters.
Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @01:19PM (#42984915)
And rewarding engineers for "impact" rather than correct, reliable, and extensible software.
Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @03:43PM (#42986020)
A company exists to make money. If you can’t describe how your work either makes the company money or saves the company money? Why should they care?
Re:We Are Destroying Software by epolanski on Saturday February 08, 2025 @07:00PM (#42987270)
Bu but...but..look at how elegant my rewrite of this part of the code that nobody uses for a product that has a handful of users is../s

There's really way too many developers that care way more about the code than the product, let alone the business.

It ends up like fine dining, where 99% of the times a big Mac would've been tastier and made the customer happier, but wouldn't justify the effort and price.

Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @10:36PM (#42988234)
Why are they hiring the candidate to begin with? This entire "justify your existence every quarter" is one of the bigger downsides of how the economy works, because it allows people to be exploited. it's the metaphorical writing of the blank check. There are no real boundaries of when work starts and stops or when your responsibilities end because the task is to increase business value and that is technically endless. The company keeps piling more and more work, keeps growing and growing, meanwhile they reward you with a small fraction of the total profit that you contributed.

I keep hearing how 10x engineers make their companies millions upon millions but they only get paid a fraction of that. How does that even make sense as a fair exchange? Not to mention is completely unfeasible for most people to have this kind of impact... it is only possible for those in key positions, yet every engineer is tasked with this same objective to increase company value as much as possible. There's just something very wrong with that.

Re:We Are Destroying Software by scarface_74 on Sunday February 09, 2025 @01:13AM (#42988851)
Why are they hiring the candidate to begin with?

Because they feel they can extract more value from them then they are paying them.

There are no real boundaries of when work starts and stops or when your responsibilities end because the task is to increase business value and that is technically endless

I work 40 hours a week and they pay me the agreed upon amount. There was nowhere in our agreement the expectation of my working more than that. I also knew that they could put me on a plane anytime during the week.

The company keeps piling more and more work, keeps growing and growing,

That’s completely on the employee to communicate trade offs between time, cost and requirements. My time is fixed at 40 hours a week. They can choose to use my 40 hours a week to work with sales and the customer to close a deal, be a project manager, lead an implementation, be a hands on keyboard developer, or be a “cloud engineer”. It’s on them how to best use my talents for the amount of money they are paying me. But seeing that they pay my level of employee the highest of all of the ICs, they really should choose to have me working with sales and clients to close deals.

That’s not bragging. I make now what I made as a mid level employee at BigTech in 2021.

I keep hearing how 10x engineers make their companies millions upon millions but they only get paid a fraction of that. How does that even make sense as a fair exchange?

The concept of a 10x engineer except in very rare cases is a myth if you think of them as just being on a keyboard everyday. All of the things I listed I could do - project management, backend developer or a cloud engineer - I would say I’m only slightly better than average if that. My multiplier comes because i can work with all of those people and the “business” and they can put me on a plane or zoom call and I can be trusted to have the soft skills necessary and my breadth is wide enough to know what needs to be done as part of a complex implementation and how to derive business value.

If you are making a company millions of dollars and you are only getting a fraction of that - and I doubt someone is doing that on their own without the supporting organizational infrastructure - it’s on you to leverage that to meet your priority stack.

Not to mention is completely unfeasible for most people to have this kind of impact... it is only possible for those in key positions, yet every engineer is tasked with this same objective to increase company value as much as possible. There's just something very wrong with that.

If you are a junior developer, there isn’t much expected of you, you are told what to do and how to do it. You aren’t expected to know the business value.

If you are a mid level developer, you are generally told the business objective and expected to know best practices of how to get there and understand trade offs on the epic/work stream level.

If you are a “senior” developer, now you are expected to understand business value, work with the stakeholders or their proxy, understand risks, navigate XYProblems on the project implementation level and deal with ambiguity.

As you move up the more “scope”, “impact” and “dealing with ambiguity” you have to be comfortable with.

“Codez real gud” only comes into play in getting from junior to mid.

Re:We Are Destroying Software by proc0 on Sunday February 09, 2025 @02:07AM (#42989054)
Right, being senior and above basically means doing less engineering. I hope that's something we can agree on because otherwise we would need to discuss the semantics.

> All of the things I listed I could do - project management, backend developer or a cloud engineer - I would say I’m only slightly better than average if that

I completely acknowledge this is a valid way to run a business, but the context here is how this sort of career progression is preventing the specialization of engineers in their domain and contributing to the widespread of software problems. Instead of investing in good engineers that specialize in their domain, companies move them away from engineering into more of an entrepreneur mindset by tasking them with adding value to the business directly, which is not something that you do as an engineer (it's nowhere in a CS degree, aside from say some electives).

A good metaphor here is a football/soccer team. What companies are doing is telling the goal keeper that he needs to score goals because more goals means winning. The team wants to win so everyone on the field has to score a goal. That obviously doesn't make sense even though the premise is true. You want a team composed of specialists and the more they specialize in their domain and work together the more you win. Even though there are only two or three offensive players that are scoring the goals, everyone is contributing to the success of the team if they specialize in their domain. Similarly, just because talking to clients and selling the product is directly contributing to the revenue of a business it doesn't mean that engineering at a higher level has no value.

And once again to stress the context here, companies can do whatever they want, but having engineers progress through their careers by moving AWAY from engineering is precisely why there is so much bad software out there. Letting engineers create better software should result in more profit in the long term, just probably not in the short term, and it's also hard for non-technical people to manage. So it is what it is.

Re:We Are Destroying Software by scarface_74 on Sunday February 09, 2025 @02:43AM (#42989179)
Right, being senior and above basically means doing less engineering. I hope that's something we can agree on because otherwise we would need to discuss the semantics

Engineering is not only the physical labor. Aircraft engineers and building engineers don’t spend most of their time doing hands on work.

https://www.careerexplorer.com/careers/engineer/

Designing and Planning: Engineers are responsible for designing and planning systems, structures, processes, or technologies. They analyze requirements, gather data, and create detailed plans and specifications to meet project objectives. This involves considering factors such as functionality, safety, efficiency, and cost-effectiveness.

When doing construction work, who adds more value?

The general contractor? (Staff software engineer),

The owners of the plumbing, electrical, and HVAC companies assuming they have the actual skills (senior level developers). The owners of the plumbing companies could very well be making more than the general contractors. This is where you can specialize and the sky is the limit.

The actual certified workers (mid level developers). This is the level that the completely head down people are. No matter how good they become at being a hands on plumber , there is a hard ceiling they are going to hit at this level.

The apprentices (juniors)?

I work in consulting. I am currently a staff architect (true - IC5) over a hypothetical project (not a real project). I know the project is going to need a cloud architect, a data architect , and a software architect. They are all specialists at their jobs and are all going to lead their “work streams”. They are all IC4s

I expect each architect to take the high level business objectives and work with the relevant technical people on both sides and lead their work along with some hands on keyboard work.

They will each have people under them that are not customer facing at all. While I know all of the domains at some level, I’m going to defer to their technical judgement as long as it meets the business objectives. I did my high level designs before they came on to the project. Was my design work, figuring out priorities, risks, making sure it met the clients needs, discussing trade offs, etc not “engineering”?

Each level down from myself IC5 to junior engineers (IC1) is dealing with less scope, impact and ambiguity. There is no reason that the architects shouldn’t get paid as much as I do. They bring to the table technical expertise and depth. I bring to the table delivery experience, being able to disambiguate, and breadth.

Re:We Are Destroying Software by proc0 on Sunday February 09, 2025 @05:01AM (#42989681)
> Do you think “engineering” is only the physical labor? Do aircraft engineers and building engineers actually do the construction work?

No, but software is inherently different because you can leverage existing software to create more software. Every airplane has to be created individually, but software that already exists can be extended or reused by just calling functions or in the worst case copy/pasting.

> The actual certified workers (mid level developers). This is the level that the completely head down people are. No matter how good they become at being a hands on plumber , there is a hard ceiling they are going to hit at this level.

Yes, with hardware this can be the case as there is a small number of ways to build something. With software there is no ceiling, and the proof here is AI. We might soon see general intelligence that just codes anything you want. This means software can be designed to automate virtually anything in anyway shape or form, but it requires more and more expertise.

> I did my high level designs before they came on to the project. Was my design work, figuring out priorities, risks, making sure it met the clients needs, discussing trade offs, etc not “engineering”?

I agree what you're outlining is how the industry works. Perhaps the core of the issue here is how software engineering was modeled after other kinds of engineering with physical limitations. Software is closer to mathematics (arguably it's just mathematics). You can of course still design and plan and delegate, but once the role starts dealing with the high level planning, scheduling, managing, etc., there is less of a requirement for the technical details.

I've worked with architects that didn't know the specifics of a language or design patterns, not because they're bad at engineering but because they had no more time to spend on those details. These details are crucial for good software that is reliable, robust, extensible, etc. Junior and even mid level engineers also don't know these details. Only someone that has been hands on for a long time within a domain can hone these skills, but I have seen so many good engineers become senior or tech leads and then forget these details only to then create software that needs constant fixing and eventually rewriting.

I'm a senior myself and have no choice but to engage in these activities of planning, scheduling, etc., when I can clearly see they do not require technical expertise. You just need some basic general knowledge, and they just are time consuming. My time would be better spent writing advanced code that mid-level and junior level can then expand on (which has happened before with pretty good success, accelerating development and eliminating huge categories of bugs). Instead I have to resort to mediocre solutions that can be delegated. As a result I can see all kinds of problems accumulating with the codebase. It's also really hard to convince the leadership to invest in "high level" engineering because they think that you create more impact by managing an army of low to mid-level engineers instead of leveraging properly written software. I'm convinced that it does add value in the long term, it's just a hard sell. Ultimately I guess it comes down to the type of org and the business needs, which often does not include writing software that will not break. Most companies can afford to write bad software if it means they get to scale by adding more people.

Re:We Are Destroying Software by scarface_74 on Sunday February 09, 2025 @05:47AM (#42989859)
> No, but software is inherently different because you can leverage existing software to create more software.

That’s true. But when I put my “software engineering”, “cloud engineer”, or “data engineer” (theoretically) hat on, I can only do work of one person. No matter how good I am at any of it, I won’t be producing more output than someone equally qualified at my own company. Distributing software does have zero marginal cost more or less and that’s why we get paid more than most industries.

but I have seen so many good engineers become senior or tech leads and then forget these details only to then create software that needs constant fixing and eventually rewriting.

This is just like both my general contractor analogy and my real world scenario. As an “staff architect”, I come up with the initial design and get stakeholder buy in. But I defer to the SMEs the cloud architect, the data architect and the software architect who still eats, sleep and breathe the details in their specialty.

Just like the owners of the plumbing company, HVAC company and electrical company are the subject matter experts. The general contractor defers to them.

In the consulting industry at least, there are two ways you can get to the top, by focusing on depth or breadth. But in neither case can you do it by being staff augmentation (the plumber, electrician, or HVAC person), you still have to deal with strategy.

> You just need some basic general knowledge, and they just are time consuming

Knowledge isn’t the issue, it’s wisdom that only comes with experience that I assume you have. Going back to the hypothetical large implementation. It involves someone who does know architecture, development and data. No matter how good your code is, high availability, fault tolerance, redundancy, even throughput comes from the underlying architecture. Code and hands on implementation is usually the least challenging part of a delivery.

Its knowing how to deal with organizational issues, managing dependencies, sussing out requirements, etc

Re:We Are Destroying Software by proc0 on Sunday February 09, 2025 @06:10PM (#42995097)
I can grant all of this makes sense for contractors, given that it's not building a career within a single company. I was more talking about full time, long term careers within a single domain.

> No matter how good your code is, high availability, fault tolerance, redundancy, even throughput comes from the underlying architecture. Code and hands on implementation is usually the least challenging part of a delivery.

I agree to a certain extent. Unless the solution is short lived, designing the code to scale properly is extremely important, and this happens at the implementation level where details of how code is being added makes all the difference. I can see how contractors might not be thinking about this, but it's a recurring pattern with legacy systems. Additionally with software, implementation gets automated away if done correctly, so there is only an initial overhead that pays back as the codebase grows larger and larger.

I'm not saying there is no need for engineers that deal with org and management issues, but rather that companies underestimate the need for senior level engineers focusing on the software implementation details, only to pay the price as the codebase inevitably accumulates complexity later as it scales in size.

Anyway, great discussion, I appreciate your input and will be considering it more.

Re:We Are Destroying Software by SR2Z on Sunday February 09, 2025 @11:18AM (#42991566)
> Why should they care?

Look, I get that HN is startup-focused, but many companies DO drown themselves in tech debt of the sake of the business case.

Then a few years pass and they are unable to deliver features quickly enough - they can't keep Sr. engineers because their stack is a soul-sucking, career-killing tarpit. The Jr. engineers don't know how to fix the code and don't even see anything wrong with it because it's all they've known.

It's totally fine if you're a megacorp - Salesforce and so on can hire JUST ENOUGH high-level folks to keep the system manageable. It's also fine if you're so small that all your work is greenfield.

The type of company that I'm describing is generally Series D/E and probably worth a few 100M dollars.

Re:We Are Destroying Software by scarface_74 on Sunday February 09, 2025 @11:47AM (#42991773)
I’m not saying don’t care about tech debt and well architected systems. I’m saying you have to tie that to business goals. If you can’t explain to a manager the business purpose of why you are doing something then does it really need to be done?

Your reasoning for tackling tech debt is sound. “We are moving like molasses. Our foundation is wobbly and we can’t build new features until we start tackling $X tech debt. These are the reasons that it will help us in the future.”

But on the other hand, if I achieve x, y, and z or someone else achieve it and we are told it didn’t achieve enough “impact”, yeah I am going to do like Google employees do and decide to work on the 5th messaging app.

Re:We Are Destroying Software by moandcompany on Saturday February 08, 2025 @01:56PM (#42985217)
Rewarding "engineers" for perceived "impact" :)
Re:We Are Destroying Software by ldigas on Saturday February 08, 2025 @01:59PM (#42985243)
I wonder in comparison what had more impact, a software made in the 80s still used today, or an app that will be replaced in a year, with an added note of "I don't know why I'm using it at all".
Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @08:06PM (#42987594)
If the company didn’t make a continuous stream of income from the product, from the company’s perspective, it would be that awesome pay to win game with in app purchases…
Re:We Are Destroying Software by efnx on Saturday February 08, 2025 @01:40PM (#42985088)
Why is it that leadership gets these ideas all at the same time?
Re:We Are Destroying Software by dasil003 on Saturday February 08, 2025 @02:06PM (#42985319)
Because the software we are paid to write has an external purpose. As scale increases, supply chains lengthen, and roles specialize, inevitably more and more people are missing the forest for the trees—this isn't an indictment, it's an inevitable result of the pursuit of efficiency and scale at all costs. Many engineers would be happy to polish the thing that exists, perhaps adding complexity the form of scalability, modularity or reusability that isn't actually needed, and in fact may make it harder to adapt to broader changes in the ecosystem that the company operates in. "Impact" is just a suitably hand-wavy management buzzword to be used in lots of different situations where they deem ICs to not sufficiently taking the big picture into account.
Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @02:31PM (#42985523)
> Many engineers would be happy to polish the thing that exists, perhaps adding complexity the form of scalability, modularity or reusability that isn't actually needed, and in fact may make it harder to adapt to broader changes in the ecosystem that the company operates in

When done correctly it absolutely adds business value and should not make it harder to adapt or change, that's the point of good engineering. The problem is that you need years, if not decades, of technical experience to see this, and it's also a hard sell when there is no immediate "impact". It's basically something that happens because consumers don't know any better, so then it becomes low priority for making profit... at least until a competitor shows up that has better software and then it has a competitive edge, but that's a different matter.

Re:We Are Destroying Software by dasil003 on Saturday February 08, 2025 @03:02PM (#42985741)
Sure. I'm just explaining why the term exists. Of course it is often applied by clueless managers, there's nothing you can do about that except go find a better manager. Just don't make the mistake of thinking its all bullshit because you've only dealt with muppets on the leadership side—I see this often with journeyman engineers who have never had the privilege of a good management team and it's very sad.
Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @10:18PM (#42988159)
Yeah and I would extend it to a better company as well.
Re:We Are Destroying Software by Henchman21 on Saturday February 08, 2025 @02:28PM (#42985495)
Because they’re all in the same tiny social circle and went to the same schools, joined the same clubs, intermarried, and just generally isolate themselves from the rest of us.

Its called “being out of touch” I believe

Re:We Are Destroying Software by esafak on Saturday February 08, 2025 @01:59PM (#42985245)
They copy the leader. Word spreads instantly on the Internet.
Re:We Are Destroying Software by phendrenad2 on Saturday February 08, 2025 @02:01PM (#42985263)
The users often feel the "impact" like a punch in the gut, as their perfectly-fine software has now grown a useless AI appendage, or popup ads for an upsell to the next pricing tier. But hey, got the promotion!
Re:We Are Destroying Software by _dark_matter_ on Saturday February 08, 2025 @01:42PM (#42985102)
If you don't want to have any say in the work that you're doing, then sure don't judge based in impact. I'd rather have the responsibility and trust of letting me decide what to work on, rather than management tell me. The only way that works is that my judgement is good, I deliver impact, and I'm paid as such.
Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @02:06PM (#42985311)
There is implicit impact by engineering good systems and software. It's like hiring a plumber and telling them "you need to improve my house" rather than "you need to improve the plumbing in my house". When your objective as an engineer is so broad that you need to worry about customers and the product, then the engineering itself suffers... that said it might not suffer to the extent that it matters but that is the point here.

Bad software keeps happening because businesses can afford it, as well as hardware improvements. It's a combination of consumers not knowing what they are missing and hardware advancements allowing for bad software to exist.

Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @03:46PM (#42986037)
> When your objective as an engineer is so broad that you need to worry about customers and the product, then the engineering itself suffers... that said it might not suffer to the extent that it matters but that is the point here

If you aren’t writing software with the customer and business in mind, why are you doing it? That’s what you are getting paid for.

Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @11:03PM (#42988352)
To clarify, I don't mean having no concern for the business or customer, but rather having that as a priority and the primary way to determine contribution. Engineers should care about the engineering first, which implicitly has value if done correctly.

That said, AI is about to change all this... but ironically this justifies my position. If software can be so powerful such that you can have a general intelligence that can do almost any cognitive task... then it follows that all this time engineers can also engineer clever systems that can add a lot of value to the company if engineered correctly.

There is no ceiling of how much performance and value can be squeezed out of a software system, but this never happens because businesses are not investing in actual engineering but rather in technical entrepreneurs that can bring something to market quickly enough.

Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @11:18PM (#42988406)
> To clarify, I don't mean having no concern for the business or customer, but rather having that as a priority and the primary way to determine contribution. Engineers should care about the engineering first, which implicitly has value if done correctly

There is no “implicit value” of software to a company. The only value of a software to a company is whether it makes the company money or saves the company money. That’s it, there is no other reason for a company to pay anyone except to bring more value to the company than they cost to employ them.

If software can be so powerful such that you can have a general intelligence that can do almost any cognitive task... then it follows that all this time engineers can also engineer clever systems that can add a lot of value to the company if engineered correctly.

It’s just the opposite. If AI can do any of the coding that a software engineer can do and I am not saying that’s possible or ever will be, what’s becomes even more important are the people who know how to derive business value out of AI.

> There is no ceiling of how much performance and value can be squeezed out of a software system

That may be true. But what’s the cost benefit analysis? Should we all be programming in assembly? Should game developers write a custom bespoke game engines and optimize them for each platform?

Re:We Are Destroying Software by proc0 on Sunday February 09, 2025 @01:25AM (#42988900)
> That’s it, there is no other reason for a company to pay anyone except to bring more value to the company than they cost to employ them.

The implicit part is that if you engineer a good system then it saves money with less bugs and breaks less, and also makes money by allowing faster development and iterations.

There are plenty of examples here. I could point at how the PlayStation network just went down for 24 hours, or how UIs are often still very laggy and buggy, or I can also point at companies like Vercel that are (I assume) very valuable by providing a convenient and easy way to deploy applications... the fact that there are many SaaS out there providing convenience of development proves that this adds value. Despite this businesses are not having their engineers do this in-house because somehow they don't see the immediate ROI for their own business. I would just call that lack of vision or creativity at the business level, where you can't see the value of a well engineered system.

Businesses are free to run their company in whichever way they please, and they can create crappy software if it makes them money, but the point is that when this is industry-wide it cripples the evolution of software and this is then felt by everyone with downtimes and bad experiences, even though hardware is unbelievably fast and performant.

> Should game developers write a custom bespoke game engines and optimize them for each platform?

This is a good example actually. Most companies that want full creative control are making their own engines. The only exception here is Unreal (other smaller engines are not used by large companies), and from what I can tell the Unreal engine is an example of great software. This is one of those exceptions where engineers are actually doing engineering and the company probably can't afford to have them do something else. Many companies could benefit from this, but it's just not as straight line from the engineering to profit and that's kind of the root of why there is so much bad software out there.

Re:We Are Destroying Software by scarface_74 on Sunday February 09, 2025 @02:03AM (#42989031)
I could point at how the PlayStation network just went down for 24 hours

Part of “meeting requirements” is always RTO, RPO, the availability requirements, latency, responsiveness, etc.

Re:We Are Destroying Software by proc0 on Sunday February 09, 2025 @02:27AM (#42989119)
Right, but it's an example that illustrates a broader problem with how software still has the same issues it had for decades, especially in network programming and web. In contrast hardware has made huge advancements.
Re:We Are Destroying Software by esafak on Saturday February 08, 2025 @01:58PM (#42985237)
You are optimizing for your resume and pay, not the product's needs. That's what people are criticizing; what constitutes impact, how it is measured, and whether that's what's needed to make the product better.
Re:We Are Destroying Software by _dark_matter_ on Sunday February 09, 2025 @08:22AM (#42990511)
In fact I'd argue it's the _exact_ opposite. I've seen countless engineers architect big complicated systems that are completely unnecessary. If anyone was measuring, they'd realize the impact of that system was: no incremental users, no incremental revenue, increased operational overhead, higher headcount, and more burden in further development. Is that what the user needs? You tell me.
Re:We Are Destroying Software by leptons on Saturday February 08, 2025 @02:01PM (#42985268)
You get rewarded?
Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @02:08PM (#42985334)
Yes with promotions, bonuses and overall good reviews, which are only marginally based on technical achievements (when it should be absolutely based on that).
Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @03:46PM (#42986044)
Technical achievements that are not in line with business objectives are worthless
Re:We Are Destroying Software by leptons on Saturday February 08, 2025 @02:10PM (#42985356)
That sounds amazing. I haven't spoken to my boss in about 2 years, haven't had a raise in over 4 years. I guess my reward is that I still have a job?
Re:We Are Destroying Software by dahart on Saturday February 08, 2025 @03:28PM (#42985902)
If you want a raise or promotion, you should talk to your boss or otherwise figure out how to remind them regularly of your value. Ask them for a quarterly or monthly one-on-one, and take an interest in what they do and what the team priorities are. I don’t know about your boss, they’re not all the same, but managers tend to like see initiative, engineers who make other engineers more productive, and engineers who have and spread an optimistic attitude. Promotions are about taking greater responsibility.

An alternative but dangerous approach is to make it known you’re looking elsewhere for work. Don’t do that if it’s relatively easy to replace you, and definitely assume the management thinks it’s easy to replace you, especialy if you haven’t been talking to your boss. ;) But there is the chance that they know you’re valuable and haven’t given you a raise because you seem content and they believe they have the upper hand - which may or may not be true.

Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @09:15PM (#42987907)
The problem is that “your boss” usually has to conform to the budget set by their manager working alongside HR.

When I left a company for increased compensation, which funny enough has only been 3x in almost 30 years across 10 jobs, it’s been between a 25%-60% raise. It’s almost impossible for any manager to push that kind of raise for anyone without a promotion.

Even at BigTech promotions usually come with lower raises than if you came in at that level.

Don’t do that if it’s relatively easy to replace you, and definitely assume the management thinks it’s easy to replace you, especialy if you haven’t been talking to your boss.

Everyone is replaceable. If you are at a company where everyone isn’t replaceable, it’s a poorly run company with a key man risk. I never saw any company outside of a one man company or professional practice where one person leaving was the end of the company.

Re:We Are Destroying Software by dahart on Sunday February 09, 2025 @10:16AM (#42991159)
> The problem is that “your boss” usually has to conform to the budget set by their manager working alongside HR.

Very true! Though isn’t it also normal in that case for HR to be recommending inflation raises at least? The exception might be if you came in at a salary that’s higher than your peer group and/or high for the title range. Parent’s problem could be that - either peer group correction or not possible for manager to raise at all without a promotion by company rules. There’s lots of reasons I can imagine, but in any case I wouldn’t expect a change with status quo, right? If you haven’t been talking to your boss, continuing to not talk to your boss is unlikely to change anything.

Re:We Are Destroying Software by scarface_74 on Sunday February 09, 2025 @11:40AM (#42991715)
It sounds like the combination of a poorly run company and a lack of initiative on the commenter’s side if they haven’t even spoken to their manager in two years.

But yeah, the company should be doing at least inflation raises. A company only has at most two full review cycles to not get me somewhere in the range I think I should be making before I start looking for another job.

But I do understand that it is a shit show out here right now. I was looking for bog standard enterprise dev jobs with AWS experience as a “Plan B” while waiting for the “Plan A” interviews to work their way through. I have never seen anything like this in almost 30 years.

It was not this hard for me to get software developer job interviews in either 2000-2001 or 2008-2010. Admittedly, that’s partially because I was only looking for remote jobs and there the competition is fierce.

Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @02:22PM (#42985443)
Yes, that's part of the reward, but normally you get raises, bonuses, etc. based on yearly or quarterly reviews. If you are not entry level, and you just focus on programming while getting a good pay, and you are not seen as underperforming, consider yourself lucky.
Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @03:48PM (#42986068)
If you haven’t gotten a raise in four years and inflation has been up 21%, your pay is actually decreasing
Re:We Are Destroying Software by Mainsail on Sunday February 09, 2025 @12:35AM (#42988728)
Three years into my career and my total comp hasn’t risen once - it’s honestly exhausting at this point but I’m still learning a ton, feel as if there is solid job security, and love my team. At some point I’m going to have to make that scary jump though if it continues.
Re:We Are Destroying Software by scarface_74 on Sunday February 09, 2025 @12:37AM (#42988737)
That’s fair. There have been plenty of points in my career where I chose leveling up over compensation and even chose a lower offer between two offers because it would prepare me for my n+1 job better.
Re:We Are Destroying Software by ajmurmann on Saturday February 08, 2025 @02:21PM (#42985434)
Sounds like an incredibly incompetent manager
Re:We Are Destroying Software by epolanski on Saturday February 08, 2025 @07:01PM (#42987278)
Nobody cares about technical achievements if they aren't making money or at least the users happier.
Re:We Are Destroying Software by epolanski on Saturday February 08, 2025 @06:57PM (#42987251)
Nobody cares about the software but developers.

I'm sorry but I don't buy it.

I've been way too close way too often with lisp and Haskell or many other niches (I know well both Racket/Scheme and Haskell btw) the people that care that much about this correct and reliable and extensible software care about the code more than they care about the products.

That's why the languages that breed creativity and stress correctness have very little, if any, killer software to show when PHP/Java has tons of it.

Re:We Are Destroying Software by scarface_74 on Saturday February 08, 2025 @08:07PM (#42987599)
Were they able to trade their passion for goods and services?
Re:We Are Destroying Software by proc0 on Saturday February 08, 2025 @10:10PM (#42988124)
I think you're conflating two different things. On the one hand you have how a product is made, and on the other there is the demand for it which will affect how the product is made. In the case of software these two things are unfortunately broadly disconnected for a number of reasons.

First, hardware has improved consistently, outpacing any need for optimal software. Second, the end user does not know what they really want from software until it is provided to them, so most people will easily put up with slow, laggy and buggy software until there is a competitor that can provide a better experience. In other words, if companies can make money from making bad software, they will, and this is often what happens because most people don't know any different and also hardware becomes more and more powerful which alleviates and masks the defects in software.

I think there is also another big factor, which is that businesses prefer to scale by adding more people, rather than by making better software. Because they want to scale along human engineers, they tend to prefer low-tier software that is easy to pick up by the masses, rather than the high-level specialized software that is a hard skill to acquire. This is understandable, but is also the reason why software is so slow in advancing forward compared to hardware (and by the same token, hardware engineers require more specialization).