Live data from Hacker News

Ask HN: How do you fix engineering culture?

news.ycombinator.com

1–10 of 143 posts

Ask HN: How do you fix engineering culture?

#1
I'm a manager in one of the biggest startups in our field. We're currently big in consulting, but we've been trying to move into SaaS.

Problem is, we're growing, but can't keep engineers. In the beginning of the year we had half the number of employees we have now, but twice as much engineers as today. An engineer left us three weeks ago and two more gave notice and are leaving in January. Hiring is extremely hard because of economy.

We have a strong culture, but it is widely felt by the rest of the company that the engineering team doesn't adhere to it. Complaints from other workers range from the decision they made to isolate themselves in their own building, how they actively engage in bickering and in-fighting between their own teams, how they have extremely limited communication to the rest of the company (users of their products), and reports of sexual harassment and racism.

There's zero consistency between the message they're sending. Some engineers believe the team is moving too fast, while a different group believes they're moving too slow. In the exit interviews we had complaints of micromanaging mixed with complaints of lack of management. The new flagship application we're building is extremely simple, but has way too many lines of code compared to all our other (more complex) applications. The development process is indeed slow and full of fail-safes, but there's still an astounding number of bug reports for a simple app.

Has anyone dealt with such a situation and has some advice?

EDIT: I'm a manager but I'm not in the engineering team itself.

Re: Ask HN: How do you fix engineering culture?

#2
To me, what your describing is a management deficiency. My first guess would be you lack highly skilled engineers at all levels of management in your company. This is a common oversight in tech companies to not consider that people at all levels of the company should be skilled in engineering. If this guess is wrong then the rest of the post doesn't apply.

If you were starting a chain of restaurants you wouldn't hire a manager that only knew of this vague idea of a thing called food and that people were willing to pay for it, but they do have excellent leadership skills. It would be totally silly to do so as there's a giant disconnect between the leadership and those producing the work. Also consider that in our restaurant even the HR team could identify 90% of the tools used by the chefs and understand how to use most of them.

It's important to take this same attitude with a tech company. If you're doing software engineering, can every other person in the company write a program? They don't have to be a programmer by trade, but can they do it if required? If that's not an expectation, why isn't it? You'd expect the software engineers to be able to fill out reports, spreadsheets, provide data metrics, understand the work place harassment polices, health care benefits, present in team meetings, etc... Many times engineers can even be expected to interact with end users/customers from time to time to assist in support or sales. So, they are expected to maintain a basic skills set to do jobs that have dedicated teams. Why not apply this in reverse to those teams and the leadership to require they have a basic knowledge of doing the work of the software engineer?

In general, engineers aren't going to integrate in to a culture or want to work for people who have zero relatable skills to them.

Re: Ask HN: How do you fix engineering culture?

#3
One approach to try is to physically integrate engineering with the rest of the company. If there's engineers that work on sales tools, have them work next to the sales group. Secondly get engineers more involved in other parts of the company. If marketing is having a team offsite, send an engineer that works on that tech with the team. Get engineers involved in business-related meetings where they can learn both the culture and customers. If engineering is acting like a disorganized, isolated group in the company, it's often (in my experience) because management has created structures that keep them feeling isolated and without a sense of ownership/belonging. The later is important for feeling organized... if some engineers feel like things are too slow or too fast, it's probably because expectations are not well defined or understood. Signals are getting crossed somewhere before they get digested by engineers. Perhaps you need more experienced engineering managers who know how to best organize teams and can act to encourage the company's culture.

Re: Ask HN: How do you fix engineering culture?

#4
Some of the social issues are difficult to address without extensive insider knowledge of your particular company and culture. Some easy outsider advice though is the 'Joel test'. Written in 2000, its a bit out of date, but there are more modern versions of it floating around the internet (such as the one that follows). Basically it is a checklist for a good development environment. In my experience it is fine to miss one or two of these, and some are n/a based on what you are building. But if you find you are missing of half-assing a lot of these, seemingly unrelated employee satisfaction issues will start to pop up.

1. Are all builds handled automatically by a Continuous Integration server?

2. Do you make and use daily builds?

3. Do you use an issue tracker?

4. Do you fix bugs before writing new code?

5. Do you have an up-to-date schedule?

6. Do you have up to date information on your products performance and usage?

7. Do you use the best tools money can buy?

8. Do you have a comprehensive test plan?

9. Do you have dedicated UI and UX designers?

10. Does all code go through code review?

11. Do you have coding standards?

12. Are new employees given training?

13. Can you download the code base and run it in one step?

14. Do engineers have the strongest say in their time estimates?

15. Do engineers choose the tools and architecture for what they are building?

Re: Ask HN: How do you fix engineering culture?

#5
As a non-engineering manager, the only way you probably have of affecting the engineering group is to voice your concerns to your own management chain (including the CEO, if you're close enough to them), emphasizing how these problems limit the company's revenue and growth potential.

Re: Ask HN: How do you fix engineering culture?

#7
One way to make it work is to fire everyone and start from scratch. If the application is extremely simple then I trust it could be built by an external team (i.e. outsourced), while you rebuild the team by hiring/vetting one engineer at a time?

On one hand you can not try to fix people. On the other hand, this applies to managers too.

Re: Ask HN: How do you fix engineering culture?

#8
post #7

One way to make it work is to fire everyone and start from scratch. If the application is extremely simple then I trust it could be built by an external team (i.e. outsourced), while you rebuild the team by hiring/vetting one engineer at a time? On one hand you can not try to fix people. On the other hand, this applies to managers too.

> One way to make it work is to fire everyone and start from scratch.

OP here.

Now that you mention it, one of the engineers said to me a while ago that the whole team was afraid of that happening during the whole year.

In fact, that might have a lot to do with the lack of morale (despite that never being in the plans of upper-management - quite the opposite, there were a load of promotions).

But it is a solution, indeed.

Re: Ask HN: How do you fix engineering culture?

#9
post #3

One approach to try is to physically integrate engineering with the rest of the company. If there's engineers that work on sales tools, have them work next to the sales group. Secondly get engineers more involved in other parts of the company. If marketing is having a team offsite, send an engineer that works on that tech with the team. Get engineers involved in business-related meetings where they can learn both the…

> If engineering is acting like a disorganized, isolated group in the company, it's often (in my experience) because management has created structures that keep them feeling isolated and without a sense of ownership/belonging.

OP here.

This is an extremely interesting insight.

Now that I think about it, engineers were indeed isolated for a long time, because PO and UX people were the ones doing all the talking with stakeholders and users "because this is the way it is supposed to be done".

This is probably both the reason they're actively isolating themselves and the reason the morale is low.

Thank you.

Post reply on HN