Sunday, February 27, 2011

Engineering Management at Facebook

Some ideas on managing engineering teams and scaling up engineering operations by Yishan Wong of Facebook. Five points from the post:

  • Hiring is THE most important piece 
  • Process should be implemented by those who practice it 
  • Promote from within 
  • Make tools your top priority - they increase productivity
  • All managers should be technically proficient 

Filtering Out Bad Developers

How do you filter out the poor developers in an interview. Imran suggests a simple "FizzBuzz" logic question.
Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”.
Another simple question (from the comments in the post):
Show me (on paper) how you would swap the values of two variables.

Head over here for the full post. Also, check out the great comments on the post.

Distributed Database/ NoSQL Technologies

I have started looking into Distributed Databases to address some of the Big Data problems that I am working on. As part of this I have been reading & researching a few options like MongoDB and CouchDB. One great resource that I came across was a document titled "Survey of Distributed Databases" by Randy Guch.

This is a great starting point for anyone new to the "NoSQL movement". It gives an overview of all the different technologies that come under the NoSQL movement. And then goes on to cover some of the projects under each of these technologies. Overall a highly recommended read.