an example would be a data-mining project where the goal is to uncover interesting subsets of data within larger public datasets which may have business value while also attempting to answer larger statistical questions about the domain. This should require the use of multiple APIs and potentially even require the candidate to write an web crawler (always make sure the assignment is legal).
The candidate would choose a data-store for the problem domain, write a multi-threaded web crawler to ingest the data, implement some stream-processing components (parsers, filters, etc), and create a simple HTML5 chart view of the (real-time) statistics around the data.
The tools he chooses would clue us in to his/her overall knowledge of distributed systems, graph theory, data-science, networking, real-time systems theory, etc The requirement to create a small statistics visualization web app to display the data will encourage the candidate to demonstrate a requisite knowledge of web standards XHMTL/CSS/Javascript.
The overall terseness, neatness, and quality of the code is what matters rather than the "coolness" of the tools. Many candidates will lose focus on the actual data-analysis problem itself as they get bogged down in the details around building a platform to solve it. The ability to remain focused on the actual problem while writing terse production quality code is what you're looking for in the interview, and the candidate should be informed of that ahead of time.
p.s. the above problem is not meant to serve as a 'bar to reach' in terms of whether or not to hire someone, but rather it's a problem designed to measure a candidate's overall "full stackness" by forcing him/her to struggle towards solving a honest to goodness "full-stack" problem
The candidate would choose a data-store for the problem domain, write a multi-threaded web crawler to ingest the data, implement some stream-processing components (parsers, filters, etc), and create a simple HTML5 chart view of the (real-time) statistics around the data.
The tools he chooses would clue us in to his/her overall knowledge of distributed systems, graph theory, data-science, networking, real-time systems theory, etc The requirement to create a small statistics visualization web app to display the data will encourage the candidate to demonstrate a requisite knowledge of web standards XHMTL/CSS/Javascript.
The overall terseness, neatness, and quality of the code is what matters rather than the "coolness" of the tools. Many candidates will lose focus on the actual data-analysis problem itself as they get bogged down in the details around building a platform to solve it. The ability to remain focused on the actual problem while writing terse production quality code is what you're looking for in the interview, and the candidate should be informed of that ahead of time.
p.s. the above problem is not meant to serve as a 'bar to reach' in terms of whether or not to hire someone, but rather it's a problem designed to measure a candidate's overall "full stackness" by forcing him/her to struggle towards solving a honest to goodness "full-stack" problem