this post was submitted on 11 Jan 2025
97 points (97.1% liked)

Ask Lemmy

27414 readers
1693 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.

top 50 comments
sorted by: hot top controversial new old
[–] Wooki@lemmy.world 5 points 1 hour ago* (last edited 1 hour ago)

Maybe they see your job as pointless waste of their time. The engineers put it together with the limitted timeframe and budget they were given, and dont need someone to tell thwm how to suck eggs. They know whats broken and how to fix it and they know how to do it.

To make it worse, you will do none of the work but will take the majority of recognition as c suite will associate the change with consultation and not the more time or money allocated to rhe team.

The best time for analysis is at the start of the project as it reduces the learning and consultation. Now, its an uphill battle, and frankly, not needed.

[–] Canonical_Warlock@lemmy.dbzer0.com 14 points 2 hours ago (1 children)

I've worked very closely with engineers and I'm engineering adjacent myself. Most of the highly technical types I know in every field (myself included) struggle to talk to people about their job because they no longer know what normal people do or don't know and they don't want to come across as condecendong. Like for me the basic refrigeration cycle feels like something everyone should know but I logically know that actually isn't the case and at the same time I don't know where the laymans actual knowledge on the topic begins. Like do I need to start with explaining that boiling liquids remove heat? Do I need to start with what boiling even is? Do normal people even know that things boil at different temps at different pressures? If I start explaining any of this are they jist going to look at me like I'm an ass and say "Of course I know how thermodynamics works"? Eventually I just decide it's better to not to talk to them.

At the same time though, if you do manage to break the ice with them then you are more likely to sucessfully get a passionate stream of consiousness rant from them because they're passionate and now they know that you can be trusted not to see them as being condescending when they overexplain. Honestly the best way I've found to break the ice with technical types is to get them to start complaining about some part of their job. That also sounds like exactly what you're looking for if you're trying to make their jobs easier. But if they start seeing you as someone who it is safe to complain to then they will start seeing ypu as someone it is safe to talk to about other things.

Also as always there is a relevant XKCD.

https://xkcd.com/2501/

[–] indomara@lemmy.world 8 points 1 hour ago (1 children)

I am the wife of a mechanical engineer, who's brothers are mechanical and electrical engineers, who's parents are electrical engineers, who's best friends are aerospace engineers.

Basically I married into a family of robots, and I agree with this commenter here.

This is the crux of why senior engineers struggle to talk about work I think, and I find the best way for me to get them talking, is to try to learn something small about their work, enough that I can ask intelligent questions, and then listen carefully to the replies.

After a while they open up and I get to listen to the best rants about "special metals" or "systems architecture" or "braking systems in the railway". It's awesome.

It's how I connect with my husband.

The other wives stand in a circle and roll their eyes about them talking about work because they don't understand anything. "Oh there they go, talking about work again."

I decided I didn't want that to be me, and told myself I would listen when they were talking, listen when my husband was working from home. Learn to ask intelligent questions about his work, and eventually, I knew what he was talking about.

Enough that I now freelance in condition monitoring, giving me yet another way to connect with him.

Ask intelligent questions, get excited about the replies, encourage them so they know you won't be insulted when they assume you don't know about and you will have them opening up in no time.

[–] Shardikprime@lemmy.world 2 points 1 hour ago

You should always listen to your significant other. Of all the people in the world, they chose you to talk to

[–] Kazumara@discuss.tchncs.de 4 points 3 hours ago

Maybe they just don't like Jira and hope you will go away if they don't engage with your process.

[–] ramsgrl909@lemmy.world 7 points 4 hours ago* (last edited 4 hours ago)

I work in a fairly toxic work environment.

The reasons I do what the engineers are doing are,

  1. A lot of times people will ask me questions and I give them answers. Then something will go wrong and it will somehow be my fault that I didn't mention it to them (they didn't ask, and I don't know the specifics of what they are doing).

  2. I have my own goals and projects for the year. Why should I give you a significant amount of my time when my salary/bonus will not reflect helping you in anyway.

  3. Job security.

These might sound bad, but that is how it works in corporate America

Edit: It sounds like you need management on board with you before you can fully continue

[–] BrianTheeBiscuiteer@lemmy.world 5 points 5 hours ago

As an automation/software engineer that works with sysadmins I think there's a natural resistance to top-down initiatives or others meddling with their processes (i.e. they're the SMEs so just let them work). I could also see your line of questioning go into a decision to restructure and eliminate jobs.

In the first case (general change resistance) I think you'd need to come with numbers that show how expensive a dept is compared to industry standards or how inefficiency drives issues downstream.

In the second case the best way to show jobs as secure is to detail all the work that needs to be done, implying how foolish it would be to cut staff and miss even more deadlines.

[–] intensely_human@lemm.ee 10 points 7 hours 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.

[–] Hugin@lemmy.world 23 points 9 hours ago

As an engineer you learn to be very careful about what you say to non engineers.

A trivial example.

What if we make change x?

It'll make some things harder and some things easier.

One week later.

Why are you having problems? You said doing x would make things easier.

More complicated example.

Can this be used for real time control?

Define real time.

Just answer the question.

I can't it's a bad question. I need to know what you are trying to control.

[–] ulterno@programming.dev 10 points 9 hours 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.

[–] serenissi@lemmy.world 1 points 5 hours ago (1 children)

Install linux/*bsd on your work device (that you take into meetings). Respect from engineers will immediately skyrocket : D

[–] Shardikprime@lemmy.world 1 points 1 hour ago* (last edited 1 hour ago)

I mean, after the third series of a person fending off shark attacks, you should also respect them as well

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.

[–] TheBananaKing@lemmy.world 11 points 10 hours 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.

[–] Classy@sh.itjust.works 2 points 7 hours ago
[–] JeeBaiChow@lemmy.world 31 points 15 hours ago

Frankly, it's tiresome trying to describe technical details with business analysts who glaze over something you're passionate about, treating it like nerdsprak. If the engineer has spent any amount of time producing a solution, you can bet he's passionate and invested. Give credit where credit is due and don't sound like an obnoxious condescending douchbag when doing so. People can tell when a disinterested person is giving fake praise. It's quite different when a crowd of peers is giving recognition of a job well done. And no, you're probably not as smart as they are in their field of expertise.

Also, listen to their input. They don't want a product with their name going live with a feature the bean counters want, but the engineers know make the product worse. It's like a mom watching your daughter to go to prom with a cheap haircut because dad as too cheap to fork out for a perm. You know what I mean.

[–] big_fat_fluffy@leminal.space 2 points 9 hours ago* (last edited 8 hours ago)

Engineers are, as a rule... well, you've seen what they're like. You gotta loosen them up with drugs first if you want a decent conversation.

[–] HootinNHollerin@lemmy.dbzer0.com 55 points 21 hours ago* (last edited 21 hours ago) (12 children)

I’m an engineer for past 20 years ,and the moment I get a whiff of some biz person fluffing bullshit I check out. Not saying you’re like that but something to be mindful of

So be real, honest, straightforward, put in effort into understanding the technicals so youre not just a sales annoyance or engineers will write you off right away IMO

Also I don’t think some people realize how busy or hard engineering can be. I’ve been working my ass off on a ground up new product and a lot of stuff just falls to the wayside out of lack of time

There’s also !askelectronics@discuss.tchncs.de !engineering@sh.itjust.works among others

[–] Passerby6497@lemmy.world 6 points 12 hours ago

That last paragraph hits home, but in a sad way for me. I spent most of the last year working on a new project to streamline one of the biggest time sinks we have, and as we're coming up on having an MVP ready to start beta testing, my org just dumped the entire team other than 1 guy. So I lost the guy who was my peer/dba on the project, and the dude who knows how to run the driver software.

Going to try to see if we can salvage what we made since it's still needed, but fuck that wrecks a ton of time and effort. And really sucks cuz my team had to pick up the slack while I was trying to get this working, and we don't even have anything to show for it.....

load more comments (11 replies)
[–] ricecake@sh.itjust.works 87 points 23 hours ago (3 children)

Accept "I have no idea" as an answer, and don't use it as an opportunity to push things in the direction you want.
learn to account for people being wrong, and don't punish them for it.

Engineers want to be accurate. They don't want to give answers that they're unsure about or just speculating.
Early in their careers they're often willing to, but that gets beaten out of them pretty quickly by people with deadlines. Expressing uncertainty often means the person interprets the answer in the direction they want, and then holds the engineer to that answer.
"It could be anywhere from 2-8 months I think, but we won't know until we're further into the design phase" is taken as 2 months, planned around, and then crunch Time starts when it starts to go over. Or revising an estimate once new information or changing requirements are revealed is treated as incompetence, even though more work taking more time is expected.

It's in the self interest of the engineer to be cagey. "I don't like to give estimates this early" is much harder to turn into a solid commitment than an earnest best estimate given the current known state of the project.

Similar for resources required or processes. Anything you don't say is unlikely to be held against you.

load more comments (3 replies)
[–] kopasz7@sh.itjust.works 14 points 17 hours ago* (last edited 17 hours ago) (1 children)

Anecdote from my first job (software engineering): New manager wants to know what our team does and how our process and software works. Like, he really really wants to know it!

Okay, I book a timeslot and prepare some slides and an example; we have a meeting. I go over the high level stuff, getting more and more specific. (Each person on our team was responsible for end-to-end developing bootloaders for embedded HW.) When I got to the SW update process and what bit patterns the memory needs to have and how the packets of data are transmitted, he called off the meeting and I've never seen him since.

I guess, he didn't want to know THAT much after all.

load more comments (1 replies)
[–] seven_phone@lemmy.world 40 points 20 hours ago (1 children)

If you are saying things like 'I’m not interested in punishing anyone for past decisions or mistakes', I think I can see the problem.

[–] pupbiru@aussie.zone 8 points 6 hours ago (3 children)

I’m not interested in punishing anyone for past decisions or mistakes

right so you think our decisions were mistakes rather than at best suboptimal but reasonable given the information at the time? how arrogant

[–] seven_phone@lemmy.world 1 points 1 hour ago

Deleted by your momma

[–] JordanZ@lemmy.world 22 points 19 hours ago (3 children)

As a software developer that's worked on a ton of legacy, home-grown, years old software systems, they may not be dodging the nitty gritty...they frankly don't know it.

Some of the systems I've had to work on were over a decade old and being maintained or patched by anybody that had a free minute(as in over 150 individual contributors over its life, 75% of which are no longer employed). So while I know what the main goal of the system is there are a bunch of little side responsibilities that nobody knows about. Like we need this thing but nobody will stick it on a roadmap or prioritize it so I'll just stick it in here as a bug fix. Now multiply that over however long that spaghetti bowl of code has been around for. So that means that code isn't documented, and likely doesn't have a ticket in Jira(because you mentioned it) explaining why it exists at all. So that leaves a lot of questions. Chances are your devs have come across some code like this and know they don't know what it does and expect to find more if they look. Tracking down why all that junk exists and if its still required can take a staggering amount of time. Trying to juggle that with your day to day is...not practical. So unless some time gets blocked out to actually answer those questions I find it unlikely that you'll get what you need.

[–] corsicanguppy@lemmy.ca 2 points 9 hours ago

Tracking down why all that junk exists and if its still required can take a staggering amount of time. Trying to juggle that with your day to day is…not practical.

Yes. Please deep-dive into it all and then schedule a long, slow sit-down, regarding the Morton mod, but also be prepared to justify why the Penske Project is behind the arbitrary and impossible schedule some DeVry grad has already set for you.

(I suspect OP will find a lot of "in what fucking time?!?" concerns when it comes to knowledge 'synch' or documenting, since neither of those are billable endeavours and no one wants a deadline for the next project crushed because of the prep and meetings justifying the time over-run for the last project)

[–] JeeBaiChow@lemmy.world 7 points 15 hours ago (1 children)

This is why documentation of business process and methods is so important. A lot of time, the engineer solves seemingly small problems without oversight, so imagine a decades old collection of many innocuous solutions leading to the whole 'dunno what this does'. If it's important enough to commit to a mission critical system, it's important enough to document.

Also, it's incredibly frustrating for an engineer to be given a one line brief, work his ass off producing the solution, then have the business analyst take credit for the work, and not bother to even learn how the system works, even at a high level. It sows distrust and disdain.

[–] pupbiru@aussie.zone 0 points 6 hours ago (1 children)

This is why documentation of business process and methods is so important

absolutely not… if you think that random code from 10 years ago is difficult to figure out if it’s still needed, try that with documentation!

IT systems are living, dynamic beasts… they should be built in such a way that makes them comprehensible with relatively minimal effort, on their own, because the code is the only source of truth and everything else may as well be a lie

[–] JeeBaiChow@lemmy.world 1 points 18 minutes ago* (last edited 17 minutes ago)

Lol. You're highlighting ops problem exactly. Oversimplification of the issue and delegation of the documentation problem to the engineering department is the exact reason people there feel resentment. It's simply not their job. As the other commenter posted - the system spans multiple disciplines and workflows, yet it seems only the engineer is tasked with understanding it all, in order to build the system. Consultants register this as a risk, and management assigns this to engineering because 'only they understand the code' - is exactly the problem op is facing.

The system is the property of the company. The company's language should be used to capture it's design, function and intent (what it does) versus how it is done (it's expression in code). There's a reason they call it 'living documentation' - it,.and the company's understanding, should evolve along with the code.

Edit: are you seriously letting 'random' segments into your code? I think I found your problem...

load more comments (1 replies)
[–] empireOfLove2@lemmy.dbzer0.com 23 points 20 hours ago

Real life mechE here. I'll tell you how my brain works.
99% of the time when I get an odd request from outside of the department, it goes one of many ways:

  • the request is literally not in my scope of work and I let them sit for a day or two and then politely deny with a CC to my manager.
  • the request is so vaguely worded that I could give a 2 sentence answer or a 20 page pdf answer or a PowerPoint full of flowcharts, and all would be "right", leaving me in a state of decision paralysis and needing clarification.
  • the request is something I can help with but I don't know your technical capability levels, so I try to keep it very generic and high level as to not simply knock you over with a technical dictionary.
  • the request is in my scope of work and very doable, but I do not want to inadvertently share information that I may not be allowed to divulge freely to other parts of the company.
    And of course, there's a lot of CYA reluctance too depending on what's being asked.

If you're asking first or second level engineers things like "how does your technical work flow do it's thing?" you are starting at the wrong level for a documentation project of this massive scope. Engineers have managers whose job is to translate requests into technical terms and figure out who is the best at doing what. That's what mine does: he takes a super weirdly worded ECR (engineering change request) and translates them into technical steps and clear direction for me. Then I can pick out the details needed to make it happen, confirm them, and document them.

You need to define clear needs out of your request: start with your end goal, the processes you need, the mechanical details of the processes you need to write, how much detail you are comfortable with, and the format in which you want it . and take all of that to the senior or director level of whatever department manages those systems. They may or may not know the exact information you need, but it should be their job to delegate and translate the request such that their reports can collate what you need in the form that you need it. And because it's the director delegating, the engineers have inherent CYA and will be a lot more comfortable giving you what you need.

load more comments
view more: next ›