TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
highscalability.com
TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
1–10 of 24 posts
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#2Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#3I couldn't agree more. The more I work with code and people, the more I realize the importance of this statement. Having separate roles for "Architect", "Programmer", "Tester" and "Support" is excellent if you want to introduce bureaucracy and process into the work place and consider programmers as just "cogs in a machine". It's also excellent if you want to see how work can grind to a halt.
Let people own their work and they will only produce things that they are proud of.
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#4"You own your code and its effects - you design, you test, you code, you monitor. If you break something, you fix it." I couldn't agree more. The more I work with code and people, the more I realize the importance of this statement. Having separate roles for "Architect", "Programmer", "Tester" and "Support" is excellent if you want to introduce bureaucracy and process into the work place and consider programmers as j…
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#5I find myself surfing to tripadvisor often when travelling. They would have the potential to build a airbnb right in there..
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#6Andy's assessment is accurate and is part of the reason I really, really like it here. The other part is the folks I get to work with.
If you're interested in joining us, drop me a line. Info in my HN profile.
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#7Culture
- The "all engineering is organized by business function" is a business trick i've seen old dot-coms implement. When you have a business function that goes from making you money to costing you, just fire everyone in that business function and sell it off. You quickly get rid of what's dragging you down and continue your profitable business functions. However, this also creates duplication of some jobs, waste, and an insidious bureaucracy where teams are fighting each other. (I could have read that section wrong, but that's what it reminded me of)
- Engineering Swaps: Really? You just uproot people so they have to re-learn how something else works and take time away from getting stuff done? Couldn't you just do a couple hour-long knowledge sharing sessions between developers?
Random thoughts- Don't design too far ahead - doesn't fighting fires and coming up on sudden, unexpected deadline changes due to lack of foresight kind of drag on your employees? You can't keep overworked code monkeys forever. It's one thing to code "quick and dirty" to get a job done. It's another thing not to plan for the future.
- Put end to end responsibility on a single engineer - so when that guy's on vacation nobody knows how to fix the thing he owns that broke?
- Process - Doesn't say if you require change control, but some sort of change alert/control system is really useful to tell people when you're changing something which may affect others, so they can immediately see what could have affected the broken thing and call the person who could have broken it.
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#8One point I do disagree with is this:
It is better to deliver 20 projects with 10 bugs and miss 5 projects by two days than to deliver 10 projects that are all perfect and on time.
You never actually have such a choice, but if one did exist I'd pick 10 perfect on-time projects. The problem is I don't know what the 10 bugs are. While I'd like them to all be typos in the footer of the contacts page, they could also be data corruption or a password leak.
If I had ppl that delivered on time with no bugs, but at half the speed, it then becomes my job to do a good prioritizing the projects such that the half we do are the right half. I think the constraint of being half as fast might even force us to make better choices.
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#9"You own your code and its effects - you design, you test, you code, you monitor. If you break something, you fix it." I couldn't agree more. The more I work with code and people, the more I realize the importance of this statement. Having separate roles for "Architect", "Programmer", "Tester" and "Support" is excellent if you want to introduce bureaucracy and process into the work place and consider programmers as j…
At the end of the day hire good ppl. They'll do the right thing most of the time. Hire the wrong people and you'll find that your incentive structure will always lead to deviant behavior.
Re: TripAdvisor Architecture - 40M Visitors, 200M Dynamic Page Views, 30TB Data
#10"You own your code and its effects - you design, you test, you code, you monitor. If you break something, you fix it." I couldn't agree more. The more I work with code and people, the more I realize the importance of this statement. Having separate roles for "Architect", "Programmer", "Tester" and "Support" is excellent if you want to introduce bureaucracy and process into the work place and consider programmers as j…