this post was submitted on 09 Apr 2025
16 points (100.0% liked)
Learn Programming
1798 readers
1 users here now
Posting Etiquette
-
Ask the main part of your question in the title. This should be concise but informative.
-
Provide everything up front. Don't make people fish for more details in the comments. Provide background information and examples.
-
Be present for follow up questions. Don't ask for help and run away. Stick around to answer questions and provide more details.
-
Ask about the problem you're trying to solve. Don't focus too much on debugging your exact solution, as you may be going down the wrong path. Include as much information as you can about what you ultimately are trying to achieve. See more on this here: https://xyproblem.info/
Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I used to manage project deliveries for critical software. Around 10 years in this role. My job was mostly to tell the project manager who wanted to please the customer that if he wanted all the bells and whistles he had to ask for it formally because the team was not being paid otherwise.
If you don't have the specs, you have to push and ask for them. Get the involved people in as many meetings as you need until everyone agrees. At least in my field. You can't guess what the customer wants. The specs are a contract and protect you from future moronic questions from the customer. It is extremely useful to take the time to do them right, otherwise the customer will always find a way to fuck you over.
So I don't agree at all that in a senior position you have to magically know what to do. It's a recipe for disaster. The more senior developers do the strict minimum.
Were your project managers always so technically capable? In my experience they represent the business and while they have to ultimately sign off for the development to start, they don't come up with architecture and design of the solution itself - that should come from the developers/engineering team. At the very least the devs propose possible options and their costs/tradeoffs and then the management picks one, but it's not like they will come down and tell you whether you should use SQL, Postgres, Mongo or w/e database.
No they weren't technicals. I was the tech lead.
It looks very open in your case. Is there no standard or precedent for what you are doing? Something you could lean on?
Otherwise one of the old wise gits I knew used to say "we don't sell hammers, we sell holes in the wall", meaning you don't care about the tools as long as you reach the desired result.
Though in our case it was always only C/C++ so...
Anyway, what I would have done in a case like yours (and it doesn't necessarily apply) :
The methods, tools and design would be a discussion between me and the dev team
This is good advice, thanks. I will definitely get it written down and approved eventually, but the issue is with
We're treading new water and doing stuff that nobody in the company is experienced with. We're getting some ideas thrown at us but that's the reason for this topic, I don't feel knowledgeable yet to decide if they are in the right or if they are selling us hammers they like while we actually need something else.
On the other hand, if I just do the simplest dumbest thing for an MVP, I am again just being a hammer and seeing everything as a nail when I should be learning, adapting and applying the correct tool? I kinda want to use the opportunity and do it better or learn something new.