Forum menu
anyway back on topic @OP, congrats, you have one of the most in demand skills in the job marketplace. Once your figure out what exactly it is you are looking for you shouldnt have to compromise on much other than location perhaps (some gigs are mostly / only found in certain cities). If one lot arent offering what you want, keep moving on until you find the outfit that does. So many devs massively underestimate their value.
It won’t be fixed later, EVER.
Thats not always true. Sometimes you have to fix it at massive expense and effort since it was such a poor design that performance is completely destroyed and the only option is to rebuild it.
Shame its now probably twenty times more work but hey the scrum master got to tick some little box and feel like they contributed.
but there has to be a balance between delivery and spending huge amounts of time on stuff that’s pretty inconsequential.
Again, any dev with a bit of experience or intelligence can see that because it's blatantly obvious.
So many devs massively underestimate their value.
See my earlier comments - it's cos no-one respects the techies. Even if they pretend to build you up with 'rockstar' appellations they still think you're an annoying nerd and overrule your concerns. If I had a quid for every time I've had this conversation I'd be several hundred quid better off:
PM: How long is this job going to take?
Dev: Well, I really can't tell at this stage. There are a lot of unknowns, X, Y, Z etc.
PM: Yeah but how long is it going to take?
Dev: FFS weren't you just listening? I don't know!
PM: You must have some idea.
Dev: If I had all the information I might, but given the unknowns we really won't know until we try.
PM: But I need a number for my spreadsheet.
Dev: Well, if all these other things weren't problems, and it's a big if, I'd expect it to take something like 4 weeks but it might take two months, or if we uncover something weird it could take much more than that.
PM: Great, thanks, I'll put 4 weeks in.
...
Boss: Hi PM, how's the project coming?
PM: It's going to take four weeks, so then we can do the rollout.
Boss: Great, I'll tell the customers.
...
PM: Hey, Dev, it's three weeks later, are you nearly done?
Dev: Oh gosh no, it all blew up in our faces and there was a ton of stuff no-one had discussed. It's going to take ages.
PM: But.. you said it'd be done in 4 weeks!
Dev: No, if you recall, I said I didn't know, and you made me say 4 weeks and I warned you of the risks.
PM: But, I don't understand... how can..
Dev: (interrupting) No, you don't understand, not at all. (goes off in huff)
In this scenario, the dev isn't part of planning, and their protestations are considered noise rather than real concerns. Because the PMs and the bosses don't respect the techies.
Thats not always true. Sometimes you have to fix it at massive expense and effort since it was such a poor design that performance is completely destroyed and the only option is to rebuild it.
Oh yes, I had this conversation.
Customer techie: I've got this great clever solution.
Me: Yeah that looks cool to us techies, but it's going to be a ball-ache and will be slow.
CT: Nah it'll be fine.
Me: No it won't.
Expert in field: No this is a crap design, it'll be really really slow, product is not meant to be used this way even though it looks like a good idea.
CT: Nah it'll be fine.
...
CT: Er, we only get half a transaction per second. Please halp.
That wasn't even PMs vs techies, it was cocky young techie vs older more experienced and even older highly experienced expert. Also happened surprisingly often. And people wonder why software is always so shit.
See my earlier comments – it’s cos no-one respects the techies. Even if they pretend to build you up with ‘rockstar’ appellations they still think you’re an annoying nerd and overrule your concerns.
Yeah....given how there are so many more dev jobs than devs atm, there's no need to tolerate this kind of nonsense anymore. Find a team that's engineering led!
EDIT: Also there has been an occasion where I refused to approve a merge because it was completely the wrong approach, even though (the more experienced) dev was saying they would fix it in tech debt afterwards. They just found someone else to approve it in the end I think.
Well – it depends a bit, sometimes it’s pragmatic to accept the tech debt and fix it later. Experienced devs should be able to talk people around to that though, rather than just throwing at enough people that someone will say yes.
I completely understand your point. In this specific case, I talked them through the right solution. It was no more complex than their original solution. It required a new endpoint to take in a list of search parameters, rather than their solution of calling the existing endpoint multiple times with a single parameter, then adding some horrible exception handling. They had the scope to change both the client and the service. All changes were non-breaking as it was new functionality. Their solution may have hidden real system issues so it definitely wasn't one to be fixed later.
The dev was rushing to get the change deployed because they wanted to generate a json payload in a development environment, which someone else was waiting on for their bit of dev work. That's also bonkers. The payload shape should be specified by design and is not just what the system generates! The dev was also unaware that they could have mocked certain calls and made it all work.
If I had a quid for every time I’ve had this conversation I’d be several hundred quid better off
My favourite is "Your project is TWO YEARS LATE!" "Right, but... it's only been my project for two weeks - it might be two years late, but that's your scheduling. I can try adding 'build a time machine' to the backlog?"
This thread is perfect example of why programming as a job is crap once you are mid level or above!
OP where do you want to end up? Would you like to go into an agreement and is software the area you would like to manage, is software a way to earn money for the time being? (If so just do what pays best), is software something you want to be doing as an employee when you're 55?
Also:
"You said this project would be one month, and instead it took two. wtf?"
"I said it would be one month with a team of three people. I kept asking for the extra people, but you kept brushing me off. I did it by myself in two months. By my reckoning, that means you got it considerably under budget."
"That doesn't matter, you said it would be one month. You need to justify why it took so much longer."
Even if they pretend to build you up with ‘rockstar’ appellations they still think you’re an annoying nerd and overrule your concerns
Fortunately where I work we still have some technical managers who do listen and most of the senior program managers also do. The scrum masters etc dont but I normally just ignore them in return since I am in the position at the moment of working across several teams they get confused and give up.
One of my favourite conversations with a PM went along the lines of:
PM: "We need you to work on this urgent project that a team has been trying to get working for months. Its almost working and just need you to fix a couple of bits and so it will take a week of your time".
Me: "I reckon it will take more than that".
PM: "The team working on it says thats all you need".
Me: "Why am I needed then?"
PM: "?"
Me: "Well if they know how long it will take then they must know the fix. If they dont know the fix they dont know the time".
PM: "We have scheduled a week so thats all it can take".
Me: "sigh"
As it happened I looked at the requirements and then asked where were the requirements since it needed rather more than one paragraph and mentioned just a few possible variations for it. Think it took about six months in the end between them and the client to actually figure out what the requirements should be at which point the entire thing needed rewriting.
PM: How long is this job going to take?
Dev: Well, I really can’t tell at this stage. There are a lot of unknowns, X, Y, Z etc.
PM: Yeah but how long is it going to take?
Dev: FFS weren’t you just listening? I don’t know!
PM: You must have some idea.
Dev: If I had all the information I might, but given the unknowns we really won’t know until we try.
PM: But I need a number for my spreadsheet.
Dev: Well, if all these other things weren’t problems, and it’s a big if, I’d expect it to take something like 4 weeks but it might take two months, or if we uncover something weird it could take much more than that.
PM: Great, thanks, I’ll put 4 weeks in.
This kind of thing boils my piss. Developers and PMs aren't enemies of each other. You're both part of a team that's trying to work together to achieve a goal. The goal being a working piece of software that allows a business to make some money to pay you.
In that situation above, I'd expect my developer to give an honest answer that they don't know, but also give me a plan for how they're going to find out. Shrugging your shoulders and saying you don't know is useless to everyone. If you said "Well, I need a couple of weeks to prove some stuff out, and then I can tell you" at least that's something a PM can work with.
Anyway, I need to get back to my ivory tower with the other architects.
PM: How long is this job going to take?
Dev: Well, I really can’t tell at this stage. There are a lot of unknowns, X, Y, Z etc.
PM: Yeah but how long is it going to take?
Dev: FFS weren’t you just listening? I don’t know!
PM: You must have some idea.
Dev: If I had all the information I might, but given the unknowns we really won’t know until we try.
PM: But I need a number for my spreadsheet.
Dev: Well, if all these other things weren’t problems, and it’s a big if, I’d expect it to take something like 4 weeks but it might take two months, or if we uncover something weird it could take much more than that.
PM: Great, thanks, I’ll put 4 weeks in.
This kind of thing boils my piss. Developers and PMs aren't enemies of each other. You're both part of a team that's trying to work together to achieve a goal. The goal being a working piece of software that allows a business to make some money to pay you.
In that situation above, I'd expect my developer to give an honest answer that they don't know, but also give me a plan for how they're going to find out. Shrugging your shoulders and saying you don't know is useless to everyone. If you said "Well, I need a couple of weeks to prove some stuff out, and then I can tell you" at least that's something a PM can work with.
Anyway, I need to get back to my ivory tower with the other architects.
(Amusing edit)
First time I submitted this post I got this. So I can tell the OP where not to go to further their IT career!
![]()
This sums up my views on web development. The only thing that's missing is a load of junior devs demanding 2 days per week to play around with stuff pretending it's 'training'.
https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f
So I can tell the OP where not to go to further their IT career!
I thought 'Move fast and break things', was the new mantra.....
Also, very dissapointed all your bookmark tabs are work related, I only have 1 out of 15 work related!
Oops. That’s kinda given away who I work for. Better behave myself now 🙂
Still, give I post under my real name, it never would have been hard to find out.
In that situation above, I’d expect my developer to give an honest answer that they don’t know, but also give me a plan for how they’re going to find out.
Yes, but the PM needs to ask that question, and lead the discussion and solution. And they also need to be able to manage uncertainty because there is always going to be uncertainty.
A good PM works for the people below and defends against those above. A bad PM works for those above and passes crap down to those below.
Still, give I post under my real name, it never would have been hard to find out.
I always assumed your name is Ben and you work in sales. I never thought that was your real name but now you've told us that too 🙂
Oops. That’s kinda given away who I work for. Better behave myself now
No photos of you on an MTB in Linked In, is dissapoint.
My photo is me doing a handstand on a trig point somewhere. Need to add a bike in with the next one.
UPDATE:
I'm leaving my current job to work elsewhere. Where I'm heading has a good reputation for software engineering and their tech stack is much more interesting than where I am currently. It'll be a bump up in salary too.
The process of applying and interviewing for several jobs was good overall as it helped me work out what I wanted.
I am 51 and I have been a software engineer for 28 years now. I can't work out if its me that has changed or the whole industry. I used to really love my job, it was innovative and fun. I worked with loads of clever people who I trusted to do a good job and who trusted me.
Now product life spans are so much shorter everyone wants development timescales compressed, there is very little thinking time now. Very little appetite for risk or innovation. Instead of hiring good people we hire mediocre people and try to use the methodology to try and mitigate that, It's tedious.
I am an embedded engineer and I have worked on everything from RADAR and navigation displays, engine management to simpler measurement equipment. Does not seem to be that sexy to young people which is a real shame as it would be great to have some new people with passion and ideas and enthusiasm on board.
Molgrips is right though engineers do understand the business side of it (well most do) they are just fed up with just being asked the same question again when they don't give the answer people want.
It just seems like an industry that sets its self up for failure all the time. Its been 10 years since I was on a project that was on time (in fact it was early) strangely it was a really crap from a commercial point of view. A previous project was 2years late but pretty much single handily turned an £8million turnover company into a £20million one. You can bet which project gets seen as a success in retrospect 🙂
PM: How long is this job going to take?
Dev: Well, I really can’t tell at this stage. There are a lot of unknowns, X, Y, Z etc.
PM: Yeah but how long is it going to take?
Dev: FFS weren’t you just listening? I don’t know!
PM: You must have some idea.
Dev: If I had all the information I might, but given the unknowns we really won’t know until we try.
PM: But I need a number for my spreadsheet.
Dev: Well, if all these other things weren’t problems, and it’s a big if, I’d expect it to take something like 4 weeks but it might take two months, or if we uncover something weird it could take much more than that.
PM: Great, thanks, I’ll put 4 weeks in.
this sounds like my day and im a product designer.
