TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: I used to be an engineer, but business analysts turned me into IFTTT?

1 点作者 unknownsky将近 3 年前
In the early years of my career, we didn&#x27;t have business analysts. We talked to people who wanted software that would improve their work process and we brainstormed with them how we could build software to address their needs. They sometimes asked for things they didn&#x27;t need or didn&#x27;t make sense, but we talked it out with them until we found the sweet spot between what they need and what we can realistically deliver.<p>The past few years, companies I worked for had a &quot;business analyst&quot; or &quot;business developer&quot;, a role that never existed in the early years of my career. My experience is that the function of a BA is to be a moat between the business needs and the developer. They give me specs with zero context or explanation which makes it impossible for me to engineer a solution.<p>For example, the BA tells me that users with a &quot;KE Number&quot; can&#x27;t order an inspection, and that this is a bug. I look at the code and work out from a sprawl of nested if-statements that currently the only users who can order an inspection are those who are currently up to date on their payments. I ask the BA what &quot;KE Number&quot; is and why they can order an inspection even if they aren&#x27;t up to date on their payments. He looks at me like I&#x27;m stupid and repeats the command louder and slower. I try and try to convince him that I need to know why, even though it&#x27;s incomprehensible to him that I would want to know. I finally manage to tease out that users on the Full Comprehensive plan are trusted to pay their bills and so they have permission to do anything that a user who is up to date on payments can do. Users on the Full Comprehensive plan get a KE Number, so that&#x27;s a way we can identify them.<p>Aha, now I have the actual business rule! I can find the one place this business rule is expressed, or if it isn&#x27;t there already, then I can add it. What I find instead is KENumber in various nested if-statements sprinkled all over the place from the persistence layer to the view logic. I do a git blame and find the developers who wrote these. I talk to them and find out they have no idea what KENumber is, but the BA told them &quot;If KENumber is x, then do y&quot; and so they added an if statement somewhere. I look through the Pull Request history and find 14 bug fixes in the form of &quot;User with KE Number can&#x27;t do x&quot; and every single one was solved by adding yet another if statement to check if a user has a KENumber.<p>This has been my average workday at the last three companies I worked at. I feel like everyone is annoyed with me because I waste time asking weird irrelevant questions and they don&#x27;t understand why it takes me so long to fix a bug. I thought it was a problem with the company but now I&#x27;ve switched twice and getting the same experience, so either I&#x27;ve changed or the industry has changed.<p>When I tell the higher-ups I want to be more informed of the business domain, they always respond &quot;Oh, you want to switch careers? You want to give up software engineering and become a business analyst instead?&quot; I can&#x27;t seem to get across that I need to know the business domain in order to do the job of software engineering.<p>Does anyone relate to this? Am I way off base? Is there a way to convince higher-ups that we need to know the business domain? Is there a trick to finding a company where software engineers have access to the domain knowledge?

1 comment

airbreather将近 3 年前
Yep, and I am seeing it moreso in traditional engineering where the white collar criminals, er,management accountants (PWC, McKinsey, Boston etc) have somehow managed to insert themselves and convinced the larger companies that &quot;those engineers, they are great guys, but they don&#x27;t understand your business like we do, so why don&#x27;t you let us tell them what to do and we will make sure they don&#x27;t screw you over or do shit you don&#x27;t need&quot;.<p>So thereby inserting themselves at great cost, muddying the waters and actually ensuring that the engineer is so far removed from the actual need that they couldn&#x27;t engineer a value solution unless they lucked in by chance - it becomes all abot cost and nothing about value and while some of those guys are smart people, very, very few of them understand engineering in the particular detail needed to really specify and return the best result.<p>I guess that is why you see a lot of them advertising for engineers to join them these days, it seems like they want to become the engineers as part of the management group.