3 Ways to Build Good Engineering Culture

April 10, 2014 at 6:00 AM by Kathleen de Lara

man-notes-macbook-computer-large.jpg

Promoting a supportive company culture undoubtedly has a direct impact on employee satisfaction, retention, and the way an organization grows. 

With a strong engineering culture, a company has the hiring advantage, motivating how outside engineers perceive the team as individuals who know how to build a high-quality product and how candidates want to work with fellow engineers who are equally tech savvy. 

Engineers who have the liberty to have a direct influence and impact on the company will be more constructive, independent, and, over time, build a better product. Check out these key practices for cultivating a solid, fervent team.

Commit to fostering a shared ownership of code.

Collaboration is key. Building a good code infrastructure involves the work of the team, not an individual who feels like the sole proprietor of a project. Instill peer-vetting of code to support the build of maintainable code. This optimizes the way teams work on the same project, or add new perspective to additional projects, and becomes especially helpful and effective in times that team members need to swarm to fix a broken code, or the engineer who created the code quits.

Avoid placing barriers that delay iteration speed.

Allow the team sufficient autonomy in making decisions by establishing a clear model for continuous deployment, as well as testing for breakages. Rather than having to go to three folks in three different departments for approval on a feature change, let employees deploy and launch with some extent of freedom. Giving employees this kind of responsibility and commitment to good deployment practices also encourages them to get the product build mostly right the first time.

Having this degree of authority also promotes a quick iteration speed, which can improve employee satisfaction and their excitement to continue building the product. Reduce development time by instituting speedy unit tests which motivates the team to get rid of any product bugs and to hone a sharp eye for any other errors. Stay on deployment schedule by refraining from having too many cooks in the kitchen.

Push for continuous automation and automated testing.

In building a product, many engineers become wildly focused in maintaining what they’re doing, which can sometimes translate to unproductive repetition and a plateau of learning. Challenge the team to be continually improving by scheduling product-development discussions once a week that allow the team to share their ongoing projects, communicate what they need from team members, and to learn basic training, skills, and systems needed to support product growth.

As a company scales, the burden on the engineering and product teams also increases, and establishing successful automated testing, restarts and reiterations allows the team to work on the product itself as the changes and improvements are made in the background. Measure, monitor, and log what’s going on to figure out how to tweak automated testing.

Here's how top tech companies are building their engineering culture:

Apple

Read Quote of Chad Little's answer to Apple (company): What is the internal culture like at Apple? on Quora


Google

Read Quote of Edmond Lau's answer to What parts of Google software engineering culture do you use and propagate after you left Google? on Quora


Box

Read Quote of Sean Rose's answer to Box (company): What is the engineering culture like at Box? on Quora

Square

Read Quote of Allen Cheung's answer to Square, Inc.: How is the engineering culture at Square? on Quora

Want to learn more about recruiting top engineer talent? Check out our free eBook on how to successfully reach out to engineers:

How to Email an Engineer

comments