Taro Logo

Great engineers working on boring code

Software Engineer
Current Employee
Has worked at Google for 4 years
October 31, 2013
2.0
RecommendsPositive OutlookDoesn't Approve of CEO
Pros

Most people are smart. They have lots of vacation days and many perks, good food, and interesting distractions like guest speakers and nap pods. The culture is good.

Pay is decent, but not as good as elsewhere.

Cons

I'm used to startup culture, and I had a serious culture shock coming to Google. Maybe it varies somewhat by team, but from my vantage point, engineering seemed very bloated and bureaucratic.

There is an obscenely long and restrictive "style guide" of programming rules that must be followed, and company-wide banned language features that make coding much less productive than I'm used to. Code reviews sometimes become bickerfests and can drag on for weeks or months.

The allocation of engineers to teams is awful. My recruiter basically lied about what I would be working on. When I arrived, I was assigned to a team and project that I had no interest in whatsoever, and there was nothing I could do about it except suck it up until I could leave.

My coworkers were extremely risk-averse and were far more concerned about breaking something that already worked than about making progress. Also, the culture is biased towards "perfect" engineering solutions, and just hacking to get something done is highly frowned upon.

This isn't always bad, and you can learn good programming practices and discipline, but unfortunately, it just isn't always practical in the real world of deadlines and needing to make progress.

The worst part of all is that I never felt like my work mattered anyway to the success of the company. I worked on various projects that my manager assigned (there wasn't much discretion in choosing things to work on, and the vaunted 20% time is just hype), and my manager had a lot of "pet projects" that he wanted done but didn't really have any great justification for why they should be done at all.

Anyway, Google is a big company, and managers and teams vary in quality. I'm sure there are plenty of people who are much happier than me, but I also think my situation is hardly unique.

Advice to Management

Don't assign engineers to projects before their start date and assume that the employee will be happy with whatever crappy project they are assigned to.

Give "nooglers" a chance to sample several different teams for the first month or so and then give them some leeway to choose a project that matters personally to them.

Engaged employees are happier and more productive.

Was this helpful?

Google Interview Experiences