复选框隐藏复选框_复选框软件工程师

复选框隐藏复选框

背景 (Background)

TL, DR.

TL,DR

First and foremost, I honestly don’t consider myself a software engineer yet a person who learned how to write computer programs while in high school.

首先,老实说,我不认为自己是一名软件工程师,而是一个在高中时学会了如何编写计算机程序的人。

About 3 years ago I got my first job as a software engineer in a small start-up company in South Africa, and in that same year, people started calling me either Software [engineer, developer, etc…] you name it.

大约3年前,我在南非一家小型初创公司中担任软件工程师的第一份工作,并且在同一年,人们开始称呼我为您所使用的软件[工程师,开发人员等...]。

As a consequence of working in a start-up that developed a solution for outside customers, I was always expected to get things done. Moving jobs and the story remains the same, in the end, I realized that my job was to get things done and most of the time get them done quickly.

在一家为外部客户开发解决方案的初创公司中工作的结果,一直被期望能完成我的工作。 搬迁工作和故事保持不变,最后,我意识到我的工作是完成工作,并且大多数时候可以快速完成工作。

One day, last year November to be precise I read an interesting article titled “The Product-Minded Software Engineer” by Gergely Orosz, and it drastically changed my way of viewing my job as a “Software Engineer”, in this blog post the author stated a lot of very interesting points that I wish everyone that builds software should think through.

确切地说,去年11月的一天,我读了一篇有趣的文章, 作者是Gergely Orosz ,题为“产品专家软件工程师” ,它彻底改变了我看待“软件工程师”工作的方式。我提出了许多非常有趣的观点,希望构建软件的每个人都应该仔细考虑。

复选框 (The checkboxes)

But why the title you may ask?

但是,为什么要问标题呢?

The answer is that what we all do ends up becoming at some point a part of our careers. We end up becoming people that checkboxes and mark them as done to secure our monthly income. — This may apply to other jobs as well.

答案是,我们所做的一切最终都会成为我们职业生涯的一部分。 我们最终成为选中复选框并将其标记为“完成”的人,以确保我们的每月收入。 —这可能也适用于其他工作。

Most of the time, as an engineer you’d get called by your managers or team leaders where they will assign you a task, explain to you their expectations (which most of them come from clients), and give you a time to complete it. Then you will simply say yes without asking the intent of the job. You will go and perform the task and wait for the next one, and the cycle repeats itself.

在大多数情况下,作为工程师,经理或团队负责人会打电话给您,他们将为您分配任务,向您解释他们的期望(其中大多数来自客户),并给您一点时间完成任务。 然后,您只需简单地说“是”,而无需询问工作意图。 您将去执行任务,等待下一个任务,然后循环重复进行。

And you are there having that fake sense of growth because you completed 10x more tasks this week than the previous week and you got 100+ commits in a month, and you are done with your checklist. Not realizing that you trapped yourself in an addictive cycle of ticking off boxes.

而且您有一种虚假的增长感觉,因为您本周完成的任务比前一周多了10倍,并且您在一个月内获得了100多个提交 ,并且您已经完成了清单。 没有意识到自己陷入了一个令人上瘾的选择框的循环中。

问题所在 (The problems)

After being there I realized that checking the boxes alone was feeding my impostor syndrome more and more, as I was constantly on the mindset of it is working don’t touch it, move to the next one. It was fun and exciting to always get kudos due to the number of tasks I was checking on my “to-do list”. Yet I’ve found some problems with this:

到了那里之后,我意识到单单检查箱子正在越来越多地滋生我的冒名顶替综合症,因为我一直都在思考它的工作原理,所以请不要触摸它,而是转到下一个。 由于我在“待办事项清单”上检查的任务数量众多,总能获得荣誉是很有趣和令人兴奋的。 但是我发现了一些问题:

  • Doing things because they have to be done without understanding the reason for their existence:

    做事情是因为必须在不了解其存在原因的情况下进行:

I believe all software engineers can relate. Many times, we are asked to change or add functionality to a system and we just go and build, being unable to differentiate why is it needed vs why am I building it. You might be building an unnecessary feature because the client or project owner said so and in the end, you will be asked to remove it because it was not needed.

我相信所有软件工程师都可以参与。 很多时候,我们被要求更改或向系统添加功能,然后我们便开始构建,无法区分为什么需要它和为什么要构建它。 您可能正在构建不必要的功能,因为客户或项目所有者这样说,最后,由于不需要此功能,系统将要求您删除它。

  • Being a false solution provider:

    成为错误的解决方案提供商:

Do software engineers know what is it that their job means? — let’s forget about the job description. Thus, when you constantly tick off boxes you will get things twisted to think that you are providing solutions yet you are simply pleasing the asker.

软件工程师是否知道他们的工作意味着什么? —让我们忘记工作说明。 因此,当您不停地打勾时,您会觉得有些曲折,以为您在提供解决方案,而您只是讨价还价。

  • Build things that you don’t understand:

    构建您不了解的内容:

This one complements my first point. The overall beauty of any job is being able to provide solutions to a specific group of people and it is sad sometimes to see that the solution providers don’t take some time to understand what we are trying to solve, thinking that if it is done it is done. The small boxes we tick off every day add up to a bigger one which is our contribution to the outside world and not knowing what are you solving for can add up to future failure.

这是对我的第一点的补充。 任何工作的整体美在于能够为特定人群提供解决方案,有时令人遗憾的是,看到解决方案提供商没有花一些时间来了解我们要解决的问题,并认为这样做已经完成完成了 。 我们每天打勾的小盒子加起来就是一个更大的盒子,这是我们对外界的贡献,不知道您要解决什么会加重未来的失败。

  • Poor solution

    解决方案差

Yes, you are ticking off things but is the overall picture important? — Many of us get called to meetings and are given the project scope and then we get the feature list and start implementing. As the other points above state, small tasks add up to a bigger one, the feature list you get will add up to an entire software system, web app, you name it. Yet you can deliver it on time and within scope, and everyone is clapping, etc… forgetting that you don't know who you will build it for and if it is needed to use x approach instead of y approach. So you built what I call a poor solution that you would also not prefer to use.

是的,您正在检查事情,但总体情况重要吗? —我们很多人被召集参加会议并获得了项目范围,然后我们获得了功能列表并开始实施。 就像上面提到的其他几点一样,小任务加起来更大,您获得的功能列表将加到整个软件系统,Web应用程序中,为您命名。 但是您可以按时并在范围内交付它,每个人都在鼓掌,等等…… 忘记了您不知道要为谁构建它,以及是否需要使用x方法代替y方法 。 因此,您构建了我所说的可怜的解决方案,您也不希望使用它。

结论 (Conclusion)

In conclusion, I believe that all software engineers should know a bit of product mindset as everything has a lifecycle and needs to tell a story for those who will use your solutions. Ticking boxes alone may prevent you to understand what is it that you are doing. When we are assigned tasks or requests we need to always be able to analyze and understand who are we solving for, why is the solution needed and what is it that we are creating? — if ever we aren’t sure and unable to answer these questions we are just ticking off boxes.

总之,我相信所有软件工程师都应该了解产品的心态,因为一切都有生命周期,需要为将使用您的解决方案的人讲故事。 单独的勾选框可能会阻止您了解所执行的操作。 当我们被分配任务或请求时,我们需要始终能够分析和了解我们正在为谁解决,为什么需要解决方案以及我们正在创建什么解决方案? —如果我们不确定并不能回答这些问题,我们只是在打勾。

Software engineering is more than simply writing a nice feature, it is about user experience and constant solution creation. I strongly believe that everyone should do things only when they understand the intent of the request.

软件工程不仅仅是编写一个不错的功能,它还涉及用户体验和不断创建解决方案。 我坚信每个人都应该在了解请求的意图后才做事。

I constantly say that building software is an art and good artists know what story they are trying to tell.

我一直说建筑软件是一门艺术,优秀的艺术家知道他们想讲的故事。

Happy hacking!

骇客骇客!

翻译自: https://medium.com/dev-genius/the-checkbox-software-engineer-7172d6f00bcb

复选框隐藏复选框

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值