this post was submitted on 23 Sep 2023
1514 points (98.4% liked)
Programmer Humor
19623 readers
23 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Why do programmers complain about expectations all the time? Just say "It needs more time" or "that's not possible unless we change a lot of things". Set the expectations, don't accept them. You're the expert. What are they gonna do? Do it themselves?
If they have inconvenient expectations, simply tell them to not have those! If your boss pushes back, just tell them in a calm but assertive tone that you tell them how things are gonna go, not the other way around.
I don't understand why more people who have not been fired don't do this.
You just have to look them in the eye and give them a firm handshake when you do it. It's so simple!
Yeah! Piss all over their projects to asert dominance!
Wait: That's what project managers do. Never mind.
We do set the expectations as best as we can, but the people who have these expectations really don't like that - to some, it's like we're offending them, and to many others, there's almost always some other developer they either know or heard about (they never do, in fact) that, allegedly, can do whatever we're being asked, but 10x cheaper and 100x faster, and he's also at a lower expertise level so we should be happy to have the job in the first place, oh and also update the documentation in 4 seconds in a way that doesn't take away these 4 seconds from the "main work".
Many of us love their job, or at least are very grateful to be able to have it, but we complain for the same reasons other people complain - ridiculous and/or hilarious clients, colleagues, and employers.
Would you be willing to trade some of your salary for more time to do projects? Maybe increase deadlines by 50% for a 25% decrease in pay. You are already being paid 1.5-2X more than ordinary workers so it shouldnt be a problem. Genuinely curious
NOW WE'RE TALKING!
You're getting downvoted but you're on to something...
Let's take your idea and apply it both ways! Are employers willing to give us a 50% increase in pay for getting projects done in half the time? 😁
Hahaha... No. Hell no.
What if I told you that you are already being paid 50% increase and you only have the option to slow down or find a new job?
Can you imagine a home inspector paid more for inspecting faster or a fireman paid more for putting out a fire faster. For some reason you can see a programmer being paid more for spending less time playing TF2 on the job.
Look, you're framing it in a very bad way, and I'll sound like a prick regardless, but I'll try my best.
First of all, let's ignore the "ordinary workers" as a group, because that's way too vague to base anything off of. There are ordinary IT professionals that are just that in their field, ordinary, and there are exceptional people doing manual labor that the society doesn't think much about.
As for the pay, I know it seems disproportionate or "too much", but it really comes down to things like repetition, value generated, skill variety, scarcity, and adaptability. There's plenty of programming jobs that anyone familiar with the white collar jobs would call dead-end, because they got you working with the same old and irrelevant stack basically keeping some old system on life support with occasional changes, and these often pay salaries lower or at least comparable to non-IT jobs, all because with these jobs, there's very little to none that you have to learn, you don't have to adapt, you don't have to come up with creative, yet technically correct solutions all the time, and you're very replaceable, so the company doesn't feel like they should share more of their profits with you - they're simply not that afraid to lose you.
Things like frontend, on the other hand, often pay higher salaries compared to the above, because not only you have to work in a rapidly changing environment over there and adapt to it successfully each time, but also use a greater set of tools, some of which you may be working with for the first time in yuyr life, and you're expected to know how to transfer your skills from other tools and projects to properly use here. I know it feels like everyone is a developer these days, but that's because we've always been a very prominent part of the Internet, especially more FOSS and privacy and anti-big-corps parts of it like Lemmy - there simply isn't a way to supply the market with enough qualified developers to drive the salaries down.
No less important is the fact that it's all on the actually wealthy people's whim, because they feel like they can exploit other jobs much more easily than they can devs, who are cherished and valued to a point to have a lot of leverage and many options on the job market - it's much easier to quit a shitty boss when you're working remotely using your laptop and a few peripherals, making enough money to create a safety net.
As for decrease in pay to have more sensible deadlines... again, we have enough leverage and confidence to either influence the deadlines enough preemptively, or miss the deadline and make a lesson out of it. I still have all my skills and knowledge that are worth the money, despite having more time to complete a project.
Most importantly, I don't really care about the deadline, nor does the majority of other salaried developers, because there's really only so much you can force in a set amount of time - a team of 5 people can't build a fully functioning copy of New York in 7 days even if they completely miss any sleep, food, water, and other bodily functions all while doing cocaine and other stimulants, and the same applies to any job there is.
I think you are undervaluing a lot of work non-IT people do. I can work as an engineer doing almost the exact same thing as an analyst or programmer but not get paid the same amount. I can be a program manager that needs to adapt to a variety of situations where I have to make critical company facing decisions but I wont be paid like a programmer.
However, you are right that devs are treated like princesses because of their leverage. All i was asking was in a world where IT is conpetitive and less of value, would it make sense to pay them less if there is less expectation. It feels weird because you dont see that in almost any other field.
No, I'm not undervaluing anybody. I'm just trying to tell you that yes, if the field was less competitive, i.e. if much nor people were good at it, we'd see smaller median salaries.
I think it is comparable to the healtcare and medicine in the US, where being a doctor or a good lawyer pays you very well for exactly same reasons.
As for your example of being an engineer doing similar stuff as some programmer and being paid differently, well, no, the pay would be very comparable. I know several people doing programming work as stated by their job descriptions and contracts, both are paid less than a middle manager I know, because the duties they have to perform can be covered by a larger population compared to the duties that pay much, much more.
The situation you're talking about is already the case, and the only reason people see IT salaries as too big is because the field and the work is perceived to be somewhat easy and simply ("Don't you sit in front of the compute rall day?"), and while it can be easy in some regards (much easier and less physically demanding that being an first responder of any kind or working in a cargo or fishing vessel), but it's not simple most of the time. Same reasons engineers are often paid more than technicians or mechanics - both are extremely important, neither is simple, but have different capabilities to match the supply and demand of their industries.
If anything, it's not like we're the execs signing ourselves monthly $400,000 as a bonus and doing actually fuck all because we have powerful parents, neither are we trust fund managers or anything similar. These are the people we should be turning against, not fellow workers that don't have dozens and hundreds of millions of dollars.
LoL you haven't worked in a company as a software developer and it shows.
Well first, the big problem is they make promises based off of the estimates we give them, which they then cut down and over promise. It's a careful dance between giving yourself the padding you need for if something goes wrong, and not letting them think they can cut down on that necessary padding if they find out you didn't use it.
For us, we under promise and over deliver... Sales over promise, and project managers bid as low as they can to win contracts, and panic when the numbers aren't working because they cut it too close or didn't push back/renegotiate scope creep
So then, when the numbers don't work and their boss tells them to fix it, they go to their team and tell them to make it work. And the only thing they can do is set meetings, make demands, and yell... Sure, you can tell them to go fuck themselves, but at that point you all look bad - if the technical and functional chains of command aren't separated (more common), they just point at you as the problem to whoever signs your paychecks... Since talking to that person is part of their week and you're busy working, that's probably not a fight you'll win.
If they're any good, they do exactly what you said - they come over, say "hey, I've got this problem... This guy wants this, what will it do to our timeline?" And, by being proactive and trusting the experts, they can just go back to the customer and say "sorry, we went over the numbers and it blows out the budget, these are our options based on my expert and the contract vehicle"
Unfortunately, most people aren't that good at their jobs. A lot of project managers have an ego and like to do handshake deals... once they start agreeing to things on their own, they put the whole team in a no-win situation
It's not that things aren't possible, it's that there's always more, and often better, options to pick from. Going back to medicine, it's like surgeons have to learn new techniques, but with the difference there there isn't anywhere near the same degree of specialization.
A better analogy would be if there were 10,000 ways to cut out a tumor but the patient only wanted the doctor to use one specific method because that's what they have heard about. It'll either be the method, "everyone's using these days" or it'll be a method that was popular in the 1990s but the tools available to perform that kind of surgery are hard to find these days because they were obsolete 20 years ago.