this post was submitted on 11 Jan 2025
118 points (96.1% liked)

Ask Lemmy

27495 readers
1194 users here now

A Fediverse community for open-ended, thought provoking questions


Rules: (interactive)


1) Be nice and; have funDoxxing, trolling, sealioning, racism, and toxicity are not welcomed in AskLemmy. Remember what your mother said: if you can't say something nice, don't say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them


2) All posts must end with a '?'This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?


3) No spamPlease do not flood the community with nonsense. Actual suspected spammers will be banned on site. No astroturfing.


4) NSFW is okay, within reasonJust remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com. NSFW comments should be restricted to posts tagged [NSFW].


5) This is not a support community.
It is not a place for 'how do I?', type questions. If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world. For other questions check our partnered communities list, or use the search function.


6) No US Politics.
Please don't post about current US Politics. If you need to do this, try !politicaldiscussion@lemmy.world or !askusa@discuss.online


Reminder: The terms of service apply here too.

Partnered Communities:

Tech Support

No Stupid Questions

You Should Know

Reddit

Jokes

Ask Ouija


Logo design credit goes to: tubbadu


founded 2 years ago
MODERATORS
 

I’m a business analyst, and a big part of my job involves working with engineers and product managers to gather detailed, in-depth information. For reasons I don’t fully understand (though I have my theories), I often find that engineers, in particular, seem oddly reluctant to share the information I need. This makes the process more challenging than I’d like. Does anyone have tips or tricks for building trust with engineers to encourage them to share information more willingly and quickly?

EDIT: Here's a summary with more details for those who requested more info: I’m working on optimizing processes related to our in-house file ingestion system, which we’ve been piecing together over time to handle tasks it wasn’t originally designed for. The system works well enough now, but it’s still very much a MacGyver setup—duct tape and dental floss holding things together. We got through crunch time with it, but now the goal is to refine and smooth everything out into a process that’s efficient, clear, and easy for everyone to follow.

Part of this involves getting all the disparate systems and communication silos talking to each other in a unified way—JIRA is going to be the hub for that. My job is to make sure that the entire pipeline—from ticket creation, to file ingestion, to processing and output—is documented thoroughly (but not pedantically) and that all teams involved understand what’s required of them and why.

Where I’m running into challenges is in gathering the nitty-gritty technical details from engineers. I need to understand how their processes work today, how they’ve solved past issues, and what they think would make things better in an ideal world. But I think there’s some hesitation because they’re worried about “incriminating” themselves or having mistakes come back to haunt them.

I’ve tried to make it clear that I’m not interested in punishing anyone for past decisions or mistakes—on the contrary, I want to learn from them to create a better process moving forward. My goal is to collaborate and make their jobs easier, not harder, but I think building trust and comfort will take more time.

If anyone has strategies for improving communication with engineers—especially around getting them to open up about technical details without fear—I am all ears.

(page 2) 50 comments
sorted by: hot top controversial new old
[–] Tehhund@lemmy.world 18 points 1 week ago (2 children)

This post is a little too vague to give real advice. You don't tell us what industry you're in. You don't tell us if the engineers are the end users of the software or processes you're working on, or if they will implement the software or processes you're working on.

If they're the end users, they might be concerned that the changes you're designing are going to make their jobs harder. A lot of changes in the past couple decades aimed at "efficiency" have involved making people take on more work for no additional pay, then firing the administrative staff or other engineers who used to do that work. Even if that isn't the sort of project you're working on they are reasonably wary based on past experience. Or maybe it's not clear to you how this will make their life harder but management will find a way.

If the engineers are writing the software that you are helping design, how are you helping to make their jobs easier and more fulfilling? It's an unfortunate fact that software engineers are sometimes treated like misbehaving vending machines that will produce software if you force them to. If they are writing the code, there's a very good chance that they know more about this process than anyone else in the room, but are they treated like they know more than anyone else in the room? Is their expertise valued or are they treated like roadblocks when they give their expert opinions?

[–] AliasVortex@lemmy.world 8 points 1 week ago* (last edited 1 week ago)

Was trying to compose a similar statement on that lack of details. Like, my background is scrum/ agile software development and if a random BA called me up out of the blue for project details, my first response is going to be "I'm busy, talk to my scrum master and/or manager" and failing that it's likely going to be the minimum amount of information required to get said BA to leave me alone so that I can get back to work. Plus, unless I know that my audience has the technical capacity for low level details, I tend to leave them out (I don't mind answering questions, but I also don't have time in my life to spout information that's going to go in one ear and out the other).

[–] Reverendender@sh.itjust.works 3 points 1 week ago (1 children)

This is extremely insightful. Thank you. To keep it somewhat vague, I am trying to optimize processes surrounding file ingestion. And I am trying to eliminate all the roadblocks caused by siloing of information. We have an in house file ingestion "engine" if you will, and we have really been rebuilding it from the ground up because its original function was not what we are using it for. So there are problems. To date, we have be MacGyvering the fuck out of everything with a pen knife and some dental floss, but we got through crunch time, and now we need it to be smooth, and by the numbers. Easy and clear for everyone.

[–] AliasVortex@lemmy.world 8 points 1 week ago

Well that might explain some things.

Not to throw shade at your company but that process is so backwards that it's no wonder the engineers are sparse on the details. I saw another comment likening software development to a crossword puzzle, which is a pretty good analogy. To further it, changing software once it's done is like trying to swap out a clue/ word once the rest of the puzzle is built. It's theoretically possible, but depending on how the puzzle is designed, it can range from an absurd amount of work to nearly impossible. Given the way you've described the state of things, your engineers are probably low on goodwill to boot.

I've worked on cobbled-together crunch-time hell-projects and the last thing I'd want after getting free would be a random BA coming to me about details that more than likely packed with the project PTSD and would very much like to forget. Doubly so if it's issues that I bought up early in the design/ development process (when they would have been comparatively easy to fix) and was dismissed by the powers that be. I can only speak for myself, but I can only take so much "that's not a priority", "we don't have time for that"/ "we'll see if that becomes a problem in the future and deal with it then" before I throw in the towel, stop keeping track of everything that's wrong, and just bin the entire project as dumper fire run by people who would rather check boxes than make things better.

[–] wirelesswire@lemmy.zip 15 points 1 week ago (1 children)

I'm not an engineer, but I work in IT and work with engineers, analysts, and management. I have no idea what your knowledge or background is, but the engineers may be reluctant to get too technical in fear of talking over your head. I would make clear to them that you need specific, technical details and not to worry about to much jargon. If they're reluctant for other reasons, it may be an issue for your management to address.

load more comments (1 replies)
[–] intensely_human@lemm.ee 15 points 1 week ago

Keep your promises and tell the truth. If you don’t keep your promises, be the first to acknowledge the failure.

I was an engineer for a long time and among my peers the problem we had with management was often that they had a slippery relationship with the truth.

Also, demonstrate forgiveness within the organization for technical mistakes. If your engineers don’t want to share the bad decisions they’ve made, look for aspects of your company culture that punish people who admit mistakes.

One example would be times when someone spoke about a mistake they made and then was relieved of responsibility because of it. That’s an example of punishing the admission of a technical mistake.

There are a few things you can do that will help make everyone's life easier.

First thing, ask engineering what can be done to reduce technical debt and then fight for it aggressively. This is often a hard sell to the product owners at first because it can increase the time it takes to produce new features, at least initially. In the long term, it will pay huge dividends to everyone involved.

When tech debt gets ignored on a new project, the timeline usually goes something like this:

  • Project is barreling toward MVP at lightening speed. The Product owner said "move fast, break things" and engineering is delivering based on that mindset and everything seems to be going great.

  • MVP is almost ready but uh oh! Now a new feature has been requested.

  • "Move fast, break things" doesn't allow time for code that is easily understandable or extendable to fit new use case scenarios so a huge chunk of the codebase has to be rewritten to accommodate the new feature.

  • Wash, rinse, repeat.

Without a major change in design philosophy, the cycle tends to get worse over time with small features requiring more and more extensive refactoring and the number of regression bugs skyrocketing. Not to mention the code base is now a disorganized, smoldering pile of spaghetti that every dev loathes having to work on. Stakeholders are unhappy. Customers are unhappy. Engineers are unhappy. Everyone is unhappy.

Second thing, talk to some actual users, people who are NOT involved in the project, to get their feedback. As an engineer, I like working on projects that add value to someone's life, or at least make their work day easier. I want the user experience to be positive. I want the features I'm working on to enhance that experience. I don't want to waste my time working on features that are completely useless and will be rejected by the users as such just because some VP who doesn't understand what the users want has a bright idea. I've experienced this a lot throughout my career and to some degree it's curbed my interest in software engineering, simply because I feel like a lot of my time and effort were wasted on projects or features that were DOA.

[–] ExtraMedicated@lemmy.world 13 points 1 week ago (1 children)

I'm a software developer, and I sometimes if I'm asked how something works, I can find it difficult to explain things in a way that would make sense to the listener, whether they are a PM or the client.

Other times, depending on the question, I simply don't know the answer, and it could take hours for me to gain enough understanding of the project to even respond intelligently.

[–] undefined@lemmy.hogru.ch 10 points 1 week ago* (last edited 1 week ago) (3 children)

I’m a developer too and sometimes I say “I don’t know” knowing full well the shitstorm it’ll bring. I’m a few years in and I just don’t give a fuck if that pisses off the person on the other end.

I just don’t have time for games — a few times I tried to give a better answer but didn’t have all the information I needed and every time it came back to bite me in the ass.

I love being a developer with all my heart, I don’t come into the office and I love my job. But I won’t play politics, kiss ass or put lipstick on a pig. Why would I? In my experience doing so is a lot worse than admitting I don’t know something; if someone wants to throw a tantrum that’s fine but they can do it on their time. If we could just get off this time suck call I can find the information I need pretty quick and get you an answer ASAP.

load more comments (3 replies)
[–] TheBananaKing@lemmy.world 13 points 1 week ago

Probably they'd rather drink a dogshit milkshake every single morning than use fucking JIRA, and they're hoping you die of natural causes before you get a chance to force it on them.

[–] meco03211@lemmy.world 13 points 1 week ago (1 children)

Had a similar experience at a job. One source of resistance I found was engineers knowing upper management had absolutely no stomach for the type of change that the company desperately needed. This would lead to them likely not implementing anything meaningful. So rather than waste their time helping me and getting on board with the changes, they just kept churning out the same trash and questioned why I hadn't made all their lives better.

Everyone wants change so long as they don't have to be the ones to change.

[–] Reverendender@sh.itjust.works 5 points 1 week ago

You're spot on. Fortunately the board has seen the light, and made some big changes today, which sound like they are going to flow downhill.

[–] FourPacketsOfPeanuts@lemmy.world 11 points 1 week ago* (last edited 1 week ago) (4 children)

They are probably unsure of your motives; are you analysing the business or analysing them? Software problems are extremely hard to estimate unless there is almost complete disclosure and discovery. It's like asking people how long a crossword is going to take without seeing the clues. Or asking how long they're going to spend on a chess move in 3 turn's time. They are possibly cagey because you are asking questions that betray the fact you are seeing this as a management problem rather than listening to what they're telling you about their craft.

Or possibly your manner of communicating is attuned to more socially intuitive people. Try presenting what you need as a problem for them to solve with a clear start and end. That way you're collaborating, and they know when their obligation to interact with you is "done".

Instead of open questions like "can you tell me how X is currently working?" try specific problem setting questions like "I'd like to see if we can make X process be 10% faster, what would that look like?" or "what would you say are the top two things that affect the time process Y takes?"

They may not want to offend you, because many of the answers might be "obvious" and, also, if they're honest workers, as many are, there may not be any clear way to improve certain things as they're already trying their hardest, and your investigation feels more like an inquisition.

Again, it may be that you're asking someone "how can I get you to get this crossword done faster?". It's sort of the wrong question. Unless you're willing to listen to their bugbears which might be the actual things affecting how efficiently things run but might not be the kind of answers project management want to hear.

load more comments (4 replies)
[–] JoeKrogan@lemmy.world 11 points 1 week ago* (last edited 1 week ago)

As an engineer, I hate having to repeat the same thing again and again so take notes and make sure you understand them.

Secondly know the product or project intimately relative to your level. For example if I work on the project and I know it from the code and infrastructure and everything else in addition to how it works for the end user then the least I expect is that the person asking the questions has used the software with a demo account on UAT or something so that my answers will not go over their heads. Knowing the product will also allow you to talk to clients better and you will know what it can and can't do.

I'm ok with someone if I see they are willing to make the effort regardless of their level, if someone is coming to me to do their work for them , then I lose my patience fast and will very soon be less helpful and prioritize my actual work over their bs.

Finally as I said we are often overworked and not looking to have more things to do. We are the ones that have to stay late to fix someone's mess or get called to patch an emergency zero day in some software used by the company on a weekend. In addition we support everyone else as without us there is no product and no jobs for the rest of you. We are at the bottom of the pyramid holding the rest up with the CEO being the prick at the top.

Finally dont just engage when you need something, get to know them and see if you can help them with something. Maybe a heads up about a project or client to avoid or some thing.

It is good that you want to bridge the gap and I wish more in your position would do so.

[–] ulterno@programming.dev 10 points 1 week ago

hesitation because they’re worried about “incriminating” themselves

This is a hard one. Because this is not about engineers, but their nature as people.

An anecdote: A lawyer, once casually asked me - if I were to design a building (this was hypothetical, because I am not a civil engineer) and after construction, was to realise some mistake that would cost lives, would I go on to tell them about it - and his tone seemed like he considered it common sense that I won't report it.
So, at least in his mind, it is common sense that people hide their mistakes.

technical details

I am a kind of person that doesn't know that people find it difficult to understand concepts out of their domain (mostly because I understand most, well explained stuff, irrespective of domain) and if someone were to ask me about my work, I would easily wander into the details. After a few years of industry experience, realising that to not be the case, I tend to be more abstract.

If you want the engineers to tell you more in depth about the technical stuff, I'd suggest you to show them your aptitude to understand their stuff and you will see them going more into detail of it. I had a manager (kind of), who was also an engineer and used Linux on a regular basis. I found it easy to discuss more in depth regarding solutions (the product was using Linux too) due to his familiarity.

[–] j4k3@lemmy.world 10 points 1 week ago (1 children)

The deeper I get into a subject involving engineering, the less I can relate what I know effectively. If I've done the thing many times, I can talk about it more freely.

It boils down to, "I don't know what I don't know." The only thing I can do is explain the long path of stuff I've figured out in order to get where I am at in my understanding. I don't have a clear overview scope. I'm aware I have likely made mistakes even within what I know.

If you are asking me for official statements that can come back to me, I'm going to be extremely cautious in what I tell you and only speak about things I am absolutely sure of and have triple checked. Most of what I'm sure of is going to be unhelpful surface level information. Professionally, telling you anything that could be wrong is career suicide. Reputation is the currency of an engineering career.

[–] Reverendender@sh.itjust.works 4 points 1 week ago (1 children)

This is exactly the vibe I have been getting. And I have really been trying to reassure them that I am in no way looking to "punish" anyone for any mistakes. If anything, I want to hear about mistakes, and any solutions that were thought up, as a guide to how we can improve the process going forward, to make their jobs easier, as well as everyone's. It's all super positive, and none of this will ever "come back to bite them." But without finding out their challenges, it makes it very difficult to try an anticipate what issues we may run into as we build these processes, and further on down the line.

[–] Natanael@slrpnk.net 6 points 1 week ago

Try to also explain how you currently understand the systems and processes, and ask them to correct what believe need to be corrected, or why not ask them who else might know better

[–] irotsoma@lemmy.world 10 points 1 week ago (2 children)

Be interested when they talk about things and ask questions. Engineers stereotypically have been told too many times that they need to dumb things down. And there's a large percentage of neurodivergent people in software engineering who like to info-dump, but have been told their whole lives that they were boring or they overshare. But often when they are given the opportunity to share openly or even better, people show interest in learning, they usually will open up. It might take time, and it might take you getting a basic understanding of some technical topics so they don't have to explain those basics to you to even start explaining their work.

I have worked as an analyst, product manager, project manager, engineer, and architect. So I tend to be really good at bringing business and technical people together by interjecting a few details that an engineer might skim over because it's basic to them as well as interjecting business scenarios that a business person might consider obvious, but an engineer might get frustrates because it was never explained to them and they like to know "why".

[–] AliasVortex@lemmy.world 6 points 1 week ago

This is excellent advice! I want to underscore that Engineers are very often much driven by the how's and the why's of things. I'll admit to judging people based on how they answer those sorts of questions. From a project perspective, I'm far less interested in doing something if the why of it can't be adequately explained to me. Similarly, I'm far more willing to take a "you know, I'm not actually sure", than a "we do it this way, because that's the way we've always done it" (the latter is probably the fastest way to tank any respect I might have had).

load more comments (1 replies)
[–] jonne@infosec.pub 9 points 1 week ago* (last edited 1 week ago) (1 children)

The engineers have their own tasks and deadlines to deal with, why are you talking to them directly to get the information you want? You need to talk to their project manager to either give you access to the database in question, write a tool that generates the report you need or write a one time query to get this information. All of these things take time and need to be planned and resourced. I hope you're not just walking up to people and asking for random lists of customers that ordered more than once in the last year or whatever?

[–] Reverendender@sh.itjust.works 4 points 1 week ago (1 children)

This is not at all what is happening here, but your sentiments are certainly valid. This is about process creation and improvement.

[–] jonne@infosec.pub 5 points 1 week ago

You should probably add some specifics, because your original post is super vague.

[–] Brkdncr@lemmy.world 9 points 1 week ago (3 children)

Have you asked them why they are reluctant to turn over the deets?

I’ve certainly withheld info because explaining DMARC is a lot more time consuming then just saying it’s a special type of spam filter.

load more comments (3 replies)
[–] MagicShel@lemmy.zip 8 points 1 week ago* (last edited 1 week ago) (1 children)

As an engineer with almost thirty years of experience, I don't want to be on the hook for telling someone the wrong thing. Also, if you want an estimate there are lots of engineers who won't want to give an estimate of 2 months when you're expecting 2 days. Then we have to explain that the entire app is a fucking unmaintainable shit show because we've been doing two months worth of work in two days by cutting corners and writing shit code and we know it.

Also they could just be shy introverts. But it's probably a reluctance to commit themselves.

I say all this like a universal truth, but just by reading all the responses here you can tell it varies from person to person. You have to assess your team and figure out each individual. My experience is it's a trust/comfort thing, but that may not be your case.

[–] Reverendender@sh.itjust.works 3 points 1 week ago

I think a lot of it is trust/comfort, and I am definitely making progress in that regard, and the advice here has been fantastic. Which I suspected it would be. My strategy is that we need to work together to solve issues, like if they were to "tell me the wrong thing." It could certainly gum up the works if I am basing a part of a new process on bad info, but honestly I have no desire to gotcha anyone, and I think that would be completely unproductive at this stage of the game. They have this file ingestion "engine" running pretty darn well, and now we need to tweak, and improve, and gameplan for the upcoming year.

[–] stinky@redlemmy.com 7 points 1 week ago

please give an example interaction that was difficult?

[–] Classy@sh.itjust.works 3 points 1 week ago
load more comments
view more: ‹ prev next ›