Taro Logo

Good people, good workers, culture of poor engineering practice

Software Development Engineer
Current Employee
Has worked at Amazon for 2 years
March 11, 2015
Seattle, Washington
4.0
RecommendsNeutral OutlookNo CEO Opinion
Pros

You get to build stuff. You have to support what you build, talk to customers, etc., but you get real ownership of components and subject matter expertise.

If you're good, find a good team, or even better, a good manager, and you'll do okay.

Cons

Too many terrible engineering choices are being made by mid- and senior-level engineers. There's this "big software" mentality that engenders inflexible, one-shot designs. This is compounded by pressure from all around to ship results as quickly as humanly possible, with or without defects. Over time, I've seen this in multiple teams and have effected some change, but it is like a few small pebbles attempting to alter a river's course.

Advice to Management

Plan extra time for design.

Ask for some kind of diagram, some explanation of the component-level design of new features and systems.

Coding first and designing later inevitably results in poor architecture, release delays, testing difficulties, and a heavier team-wide burden supporting software which should have waited a little longer.

Don't go all waterfall, but for pity's sake, ask for a design, not just metrics!

Was this helpful?

Amazon Interview Experiences