Using FizzBuzz to Find Developers who Grok Coding
来源:互联网 发布:算法统宗pdf下载 编辑:程序博客网 时间:2024/06/07 19:24
On occasion you meet a developer who seems like a solid programmer. They know their theory, they know their language. They can have a reasonable conversation about programming. But once it comes down to actually producing code they just don’t seem to be able to do it well.
You would probably think they’re a good developer if you’ld never seen them code. This is why you have to ask people to write code for you if you really want to see how good they are. It doesn’t matter if their CV looks great or they talk a great talk. If they can’t write code well you probably don’t want them on your team.
After a fair bit of trial and error I’ve come to discover that people who struggle to code don’t just struggle on big problems, or even smallish problems (i.e. write a implementation of a linked list). They struggle with tiny problems.
So I set out to develop questions that can identify this kind of developer and came up with a class of questions I call “FizzBuzz Questions” named after a game children often play (or are made to play) in schools in the UK.
In this game a group of children sit around in a group and say each number in sequence, except if the number is a multiple of three (in which case they say “Fizz”) or five (when they say “Buzz”). If a number is a multiple of both three and five they have to say “Fizz-Buzz”.
An example of a Fizz-Buzz question is the following:
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”.
Most good programmers should be able to write out on paper a program which does this in a under a couple of minutes.
Want to know something scary ? - the majority of comp sci graduates can’t. I’ve also seen self-proclaimed senior programmers take more than 10-15 minutes to write a solution.
I’m not saying these people can’t write good code, but to do so they’ll take a lot longer to ship it. And in a business environment that’s exactly what you don’t want.
This sort of question won’t identify great programmers, but it will identify the weak ones. And that’s definitely a step in the right direction.
- Using FizzBuzz to Find Developers who Grok Coding
- Find out who linked to you?
- Using ctags to find functions
- Using ctags to find functions
- FizzBuzz
- FizzBuzz
- FizzBuzz
- FizzBuzz
- FizzBuzz
- Using Valgrind to Find Memory Leaks
- how to find deadlock scenario using gdb
- using bgp data to find spammers
- Oracle Database developers talking to the developers
- Using v$session_longops to find long running SQL statements
- How to Find a Blank Cell in Excel Using Vba
- How to find out suitable parameters using cross validation
- Using PropertyInfo to find out the property type
- How to determine who is logged on to a database by using Microsoft Jet UserRoster in Access 2000
- 服务器上的XSLT
- [SilkTest]ANYTYPE data type and AnyWin Class
- 20070306
- 掌握 Ajax,第 1 部分: Ajax 简介
- oa系统设计---如何设计权限
- Using FizzBuzz to Find Developers who Grok Coding
- Using an Agile Software Process with Offshore Development
- apache 在windows下无法启动的一个错误
- .net中如何调试script代码
- 利用SqlServer内部存储过程实现快速方便的分页
- XSLT - 编辑XML
- Ajax核心:XMLHTTP组件相关技术资料
- I am a new comer
- .net面试题大全(1)