Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> How do you do that without some basic understanding of computer science-y stuff?

What do you mean by "understand"? In some ways your question is like asking an engineer how he can choose a particular bolt for use in, say, an elevator, without understanding the basics of how the failure characteristics of the bolt are known. There's some relationship there, but is it really an important one? Sometimes it may be. Other times (most times?) probably not.

> How do you define "scalable", how do you measure it? How can you have some intuition about a design before we spend 3 months and many sprints building it first?

"Scalable" is entirely dependent on the business' needs and plans, and measuring it certainly doesn't require any formal understanding of computer science. This is fairly basic arithmetic. As for the design intuition: computer science-y things are only so useful as far as that goes. Their real utility is in optimization, not designing ahead of time.

> I can't see myself hiring a computer programmer who is offended by being expected to have a casual acquaintance with computer science.

Well, as you yourself noted, questions of this sort aren't for "casual acquaintance" levels of knowledge. These kinds of exercises are basically things an undergrad (or, in some cases, graduate) student thinks are important because they're all he knows.

Incidentally, the fact that interviews focus so much on these kinds of "CS fundamentals" is one reason I chuckle whenever somebody tries to describe these companies' activities as "engineering." Any engineering that goes on in places that put much weight to these kinds of questions, and which isn't interviewing candidates specifically to engage in academic, or close-to-research CS, day-to-day, is usually by accident.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: