DEV Community

Discussion on: React Beginner Question Thread ⚛

Collapse
 
ron23 profile image
Ron • Edited

Hey Dan, great stuff here. I assume you are interviewing developers once in a while so I thought I'll ask a few questions about it .

I was wondering what is it that YOU are looking for in a candidate?
Do you agree with the current method of interviewing @ FB (i.e whiteboard solving CS fundamentals question)?
Do you think there's difference in the required skills between a UI developer and a UI library developer?
What is the best way in your opinion to interview a UI developer?

Thanks!

Collapse
 
dan_abramov profile image
Dan Abramov

I’m not currently interviewing yet, as I’m actually just going through the interview training.

Do you agree with the current method of interviewing @ FB (i.e whiteboard solving CS fundamentals question)?

This is pretty inaccurate as far as I know. FB has two separate hiring pipelines. The traditional one is more CS-focused, yes. But if you apply for the “Front End Engineer” position then this assessment is not true.

Front end engineer interview doesn’t require knowledge of complex CS concepts. Instead, it checks for understanding JS/CSS fundamentals really well. It might include some algorithmic questions but they’re also related to scenarios you’re likely to encounter in front-end development (e.g. tree traversal). I think those are worthwhile questions, even if it inevitably results in some false negatives (i.e. people not getting through).

Do you think there's difference in the required skills between a UI developer and a UI library developer?

I don’t see these as distinct disciplines. I think it’s important UI developers progress so they eventually feel comfortable with extracting their knowledge in a library, or fixing existing libraries to better match their workflow.

What is the best way in your opinion to interview a UI developer?

I don’t know. It really depends on your company, how much time you’re willing to spend per candidate, whether you’d rather err on the side of false positives or false negatives, etc.