软件工程师职业规划_为什么公司文化对您作为软件工程师的职业很重要

软件工程师职业规划

The impact of a company’s culture is reflected in a company’s ability to achieve their goals and productivity levels, and in their employees’ satisfaction. The company culture can make or break a business.

公司文化的影响体现在公司实现目标和生产力水平的能力以及员工的满意度上。 公司文化可以成就或破坏业务。

Yet, company culture is the one thing that many aspiring programmers overlook in their job search. Unfortunately, they usually find out after accepting a job offer that they are working for a company with a very poor culture. That oversight can have a negative impact on their career.

然而,公司文化是许多有抱负的程序员在求职时忽略的一件事。 不幸的是,他们通常在接受工作邀请后才发现自己在一家文化很差的公司工作。 这种疏忽可能会对他们的职业产生负面影响。

To better explain the impact of company culture, I am going to use experiences from my career to illustrate.

为了更好地解释公司文化的影响,我将使用职业生涯中的经验进行说明。

工作时间 (Working hours)

The 9 a.m. to 5 p.m., 40-hour work week is a reflection of how work was performed in the Industrial Revolution. During this time, workers punched a clock which measured the amount of time worked. Management used the punch clock to gauge employee productivity.

每周工作40小时的上午9点至下午5点反映了工业革命中工作的进行方式。 在这段时间里,工人打了一个钟,以测量工作时间。 管理层使用打Kong钟来衡量员工的工作效率。

Today’s software engineers are smart, creative people who prefer to work in an autonomous environment to create their best work. Unfortunately, at some companies, management still clings to hours worked as a barometer of productivity.

当今的软件工程师是聪明,有创造力的人,他们更喜欢在自治环境中工作以创造最佳工作。 不幸的是,在一些公司中,管理层仍然坚持将工作时间作为生产率的晴雨表。

The following examples are how two management teams from two different companies that I worked for view work hours.

以下示例说明了我工作过的来自两个不同公司的两个管理团队如何查看工作时间。

第一公司 (First company)

This company provided flexibility to employees in terms of when they started and ended their work day. The only requirement was that every member of the team had to be available during the same six-hour window during the day.

该公司为员工提供了上班和下班时间的灵活性。 唯一的要求是团队中的每个成员都必须在一天中的同一六个小时内有空。

This provided flexibility to employees so that they could schedule doctor visits, receive home deliveries, tend to their homes and car repairs, and so on.

这为员工提供了灵活性,以便他们可以安排医生就诊,接受家庭分娩,照料他们的房屋和汽车维修等。

第二公司 (Second company)

Management sent an email to every programmer, asking them to declare their time of arrival at and their time of departure from work every day. Later, we received another email explaining that people were not adhering to when they said they were arriving at and leaving from work. Shortly thereafter, upper management was sitting at the front of the office when people arrived at work. They were probably noting when their employees were arriving at work.

管理层向每个程序员发送了一封电子邮件,要求他们声明他们每天的到达时间和下班时间。 后来,我们收到了另一封电子邮件,说明人们说到达或离开工作地点时未遵守。 此后不久,当人们上班时,高层管理人员坐在办公室的最前面。 他们可能注意到员工何时上班。

Normally I arrived at work around 8:00 a.m. One morning I arrived at work at 8:30 a.m. Upper management commented that I was late for work. There were about 20 people that worked in the same office, and I was the second programmer to arrive at work that day.

通常我是在早上8:00左右上班的。一天早上,我是在早上8:30上班的。 在同一间办公室里大约有20个人在工作,那一天我是第二位上班的程序员。

如何避免 (How to avoid it)

Avoid companies that measure your success by when you arrive at and leave from the office. Instead, work for companies that measure your success by the goals you meet. When interviewing with companies, ask if they have core work hours or standardized hours.

避免使用能在您到达和离开办公室时评估您的成功的公司。 相反,应为根据您所达到的目标衡量您的成功的公司工作。 在采访公司时,询问他们是否有核心工作时间或标准时间。

Companies with core work hours require that every member of their team be available during those hours. Employees can set their start and departure time based on these core hours. For example, if core work hours are 10 a.m. — 4 p.m., employees can start work at 8:00 a.m. and leave at 4:00 p.m. Or, employees can start work at 10:00 a.m. and leave at 6:00 p.m.

具有核心工作时间的公司要求在这些时间中团队的每个成员都应有空。 员工可以根据这些核心时间设置他们的开始和离开时间。 例如,如果核心工作时间是上午10点至下午4点,则员工可以在8:00 AM开始工作,然后在4:00 pm离开,或者,员工可以在10:00 am开始工作,然后在6:00 pm离开。

鼓励或劝阻员工采取行动? (Encourage or discourage employees taking action?)

Following the Pareto Principle, the overwhelming majority of employees will treat work as something they do between 9:00 a.m. and 5:00 p.m. These employees will not make an effort to learn new skills or technology on their own. The remaining 20% of employees will invest their time and energy on learning and improving their knowledge. Companies can decide to either foster employee development or to neglect it.

遵循帕累托原则,绝大多数员工将在上午9:00至下午5:00之间将工作视为他们所做的事情。这些员工不会努力学习自己的新技能或技术。 其余20%的员工将把时间和精力投入到学习和提高知识上。 公司可以决定鼓励还是忽略员工的发展。

The following are examples from my work experience of how management treated employees who spoke at conferences.

以下是我的工作经验中有关管理层如何对待在会议上讲话的员工的示例。

第一公司 (First company)

I was selected to speak at my first technology conference. The conference was Connect.Tech, which is the premier web and mobile development conference in the Southeastern United States.

我被选为第一次技术会议的发言人。 该会议是Connect.Tech,这是美国东南部的首要Web和移动开发会议。

Within 48 hours of it being announced that I would be speaking at the conference, our director purchased conference tickets for every developer in the department. My director wanted to support me because I had invested my time and effort to master a skill that I would be speaking about at the conference.

在宣布我要在会议上发言之后的48小时内,我们的主管为该部门中的每个开发人员购买了会议门票。 我的导演想支持我,因为我投入了时间和精力来掌握我将在会议上谈论的技能。

Later, after accepting to speak at my second technology conference, the director pointed out that I was speaking again and gave me a monetary reward for my efforts.

后来,在接受我的第二次技术会议上的发言后,主管指出我再次发言,并为我的努力给予了金钱奖励。

第二公司 (Second company)

This company was in the process of rewriting their website from PHP to AngularJS. I was selected to speak at ngConf, which is the world’s largest conference on AngularJS.

该公司正在将其网站从PHP重写为AngularJS。 我被选为ngConf(全球最大的AngularJS会议)的发言人。

To speak at this four-day conference, the company required that I take two days of vacation. I was also given two days off. The conference covered my airfare and hotel, but I paid for my own food and taxi rides.

在这次为期四天的会议上发言时,公司要求我休假两天。 我也有两天假。 会议涵盖了我的机票和酒店,但我自己支付了伙食费和出租车费。

At the last minute, another programmer decided to attend the conference. The company paid for his airfare, conference ticket, hotel, taxi rides, and food. As well, the company gave this guy four days off to attend the conference.

在最后一分钟,另一个程序员决定参加会议。 公司为他支付了机票,会议票,酒店,出租车和食物。 同样,该公司还给这家伙放了四天假参加会议。

Later, I asked the company if they would also cover my food. They responded by saying that I was being self-centered and just wanted to exploit the company’s resources.

后来,我问公司是否也可以提供我的食物。 他们回答说我本人以自我为中心,只想利用公司的资源。

如何避免 (How to avoid it)

As you can tell, the company culture in these two companies are drastically different. When you look for a job as a software engineer, make sure you do your research about the company first. Try to figure out whether or not the company invests in their employees’ development. Does the company encourage their employees to improve their skills? Or does the company discourage it?

如您所知,这两家公司的公司文化截然不同。 当您寻找软件工程师的工作时,请确保您首先对公司进行研究。 尝试弄清公司是否投资于员工的发展。 公司是否鼓励员工提高技能? 还是公司不鼓励它?

工作流程和质量控制 (Work processes and quality control)

Quality assurance (QA) is a part of the software development life cycle. QA ensures that there are no bugs in the code. The longer a bug goes undetected, the more costly it is going to be to fix it later on.

质量保证(QA)是软件开发生命周期的一部分。 质量检查确保代码中没有错误。 无法检测到错误的时间越长,以后修复该错误的成本就越高。

Git is the primary tool programmers use for version control. Programmers in a team must have a strategy to control the codes used in production-ready codes.

Git是程序员用于版本控制的主要工具。 团队中的程序员必须有一种策略来控制生产就绪代码中使用的代码。

The following are examples from my work experience. They show when companies invest in their work processes and when they do not.

以下是我的工作经验示例。 它们显示了公司何时投资于其工作流程,何时不投资。

第一公司 (First company)

Every programming team had a QA person. QA was responsible for checking the programmers’ code and verifying that it met the acceptance criteria for the story. If the QA engineer had concerns with the quality of the code, it was the programmer’s responsibility to re-do the code until standards were met.

每个编程团队都有一个质量检查人员。 质量检查人员负责检查程序员的代码,并验证其是否符合故事的接受标准。 如果质量检查工程师对代码的质量感到担心,那么程序员必须负责重新编写代码,直到达到标准为止。

The programmers used a Version Control System workflow (VCS) to create branches that reflected the number assigned to the story. Once programmers completed their code, they were required to merge the master branch into their code to see if there were any merge conflicts. Once that was done, they submitted their code to the master branch.

程序员使用版本控制系统工作流(VCS)创建分支,以反映分配给故事的编号。 程序员完成代码后,需要将master分支合并到代码中,以查看是否存在任何合并冲突。 完成后,他们将代码提交给master分支。

Before the end of the sprint, the entire team would spend a day verifying that the code on the master branch met the acceptance criteria for every story. Programmers were required to verify the work completed by others, but were not allowed to test their own code.

在sprint结束之前,整个团队将花费一天的时间来验证master分支上的代码是否满足每个故事的接受标准。 要求程序员验证其他人完成的工作,但不允许他们测试自己的代码。

第二公司 (Second company)

This company did not have a single QA person on staff. They also did not implement a Git workflow strategy. As a result, programmers were responsible for testing their own code in relation to the story, but not in relation to the potential impact it might have on someone else’s code.

该公司没有一名QA人员。 他们还没有实施Git工作流程策略。 结果,程序员要负责测试与故事有关的自己的代码,而不是与故事对他人代码的潜在影响有关的测试。

A release was pushed to production. The push resulted in the website going down. Luckily, the code was rolled back within seven minutes. In the following week, a team lead and several programmers tried to find a solution for the website outage. For several nights that week, they worked until 10:30 p.m. trying to fix the problem.

版本已发布到生产中。 这种推动导致网站瘫痪。 幸运的是,该代码在7分钟内回滚了。 在接下来的一周中,一个团队负责人和几个程序员试图为网站中断找到解决方案。 那个星期的几个晚上,他们一直工作到晚上10:30,试图解决问题。

After resolving the problem, management sent an email praising the team leader for the hours he spent solving the problem. The email concluded that all employees should be willing to work the same number of hours to complete their work.

解决问题后,管理层发送了一封电子邮件,称赞团队负责人解决问题所花费的时间。 该电子邮件得出结论,所有员工都应愿意工作相同的小时数才能完成工作。

Instead of addressing the root problem, which was having an ineffective VCS strategy and a lack of QA resources, management decided to praise someone for the side effect.

管理层没有解决根本的问题,即无效的VCS策略和缺乏质量检查资源,而是决定称赞某人的副作用。

如何避免 (How to avoid it)

When interviewing with a company, you will probably speak to more than one developer on the team. Ask them if the company utilizes an effective VCS strategy. If so, ask them to explain what it is. It is important to know if all programmers provide a consistent answer to this question.

在采访一家公司时,您可能会与团队中的多个开发人员交谈。 询问他们公司是否采用了有效的VCS策略。 如果是这样,请他们解释是什么。 重要的是要知道是否所有程序员都对此问题提供一致的答案。

Another question to ask is what is the time between when an error with a production code is reported and when that error is fixed.

另一个要问的问题是报告生产代码错误与修复该错误之间的时间。

工作与生活的平衡与休假时间 (Work-life balance and vacation time)

The Business Dictionary defines “work-life balance” as “a comfortable state of equilibrium achieved between an employee’s primary priorities of their employment position and their private lifestyle.”

《商业词典》将“工作与生活的平衡”定义为“在雇员的主要工作重点和个人生活方式之间实现的一种舒适的平衡状态”。

Programmers should seek a job that does not demand an excessive amount of their time and energy that they miss their children’s birthday or taking their vacation.

程序员应该找一份不需要过多时间和精力来错过孩子的生日或休假的工作。

The following are examples from my work experience of how management manage their employees’ work-life balance and vacation.

以下是我工作经验中有关管理层如何管理员工的工作与生活平衡和休假的示例。

第一公司 (First company)

This company provided three weeks of vacation. Employees could take vacation with as little as one day’s notice. There was no problem when one or more employee went on vacation at the same time.

这家公司提供了三个星期的假期。 员工仅需一天的通知就可以休假。 一个或多个员工同时休假没有问题。

If employees did not take their allotted vacation, it did not roll over to the next year. Between Thanksgiving and Christmas, the company sometimes worked with partial development teams. This is because programmers were sent home to make sure that they used all of their vacation.

如果员工没有休假,则该假期不会延期至下一年。 在感恩节和圣诞节之间,公司有时会与部分开发团队合作。 这是因为程序员被送回家中以确保他们度过了所有假期。

第二公司 (Second company)

An employee, along with four other couples, scheduled a trip to Hawaii where they had rented a compound on the beach for a week. Shortly before this employee was scheduled to leave for vacation, he was asked to reschedule his vacation. The reason given was that the company had an upcoming deadline, and they were behind on completing it.

一名员工与其他四对夫妇安排了一次夏威夷之旅,在那里他们在海滩上租了一个大院一周。 在安排该员工休假前不久,他被要求重新安排假期。 给出的原因是该公司有一个即将到来的截止日期,他们在完成它方面落后了。

When I tried taking time off, my team leader asked me to make sure that our deadlines would not be negatively impacted by my vacation. In other words, the company expected me to schedule my vacation around my work deadlines.

当我尝试请假时,我的团队负责人请我确保我们的截止日期不会受到假期的负面影响。 换句话说,公司希望我在工作截止日期之前安排假期。

如何避免 (How to avoid it)

Ask what benefits the company provides in terms of vacation and holiday. It is important to know if you are able to take time off without giving notice several days or weeks in advance.

询问公司在假期和假期方面可带来什么好处。 重要的是要知道您是否可以在几天或几周前不通知您的情况下休假。

During your interview, ask every programmer if they took all of the vacation time they were given, for every year they have worked at the company.

在您的面试期间,请问每个程序员,在公司工作的每一年,他们是否都利用了所有的假期。

结论 (Conclusion)

Company culture is a reflection of the leadership and work environment within a company. As a new programmer, working for a company with a positive company culture can catapult your career. If you end up in a company with a negative company culture, it can impact your ability to learn and grow as a software developer.

公司文化反映了公司的领导能力和工作环境。 作为新程序员,在拥有积极公司文化的公司里工作可以促进您的职业发展。 如果您遇到的公司文化对公司不利,那么这可能会影响您学习和成长为软件开发人员的能力。

Thank you for reading my article. If you like it, please click on the clap icon below so that others will find this article.

感谢您阅读我的文章。 如果喜欢,请单击下面的拍手图标,以便其他人可以找到本文。

Here are more of my articles that you might find interesting:

这是我可能会发现有趣的更多文章:

翻译自: https://www.freecodecamp.org/news/why-company-culture-is-important-to-your-career-as-a-software-engineer-5a590bc44621/

软件工程师职业规划

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值