Happy new year !
I wish a successful and stress-free 2018 to all the readers of this board
I’d like to get your opinion on coding tests and technical interviews in general. It’s widely accepted that technical interviews are broken. Whiteboard tests or live coding sessions are things that devs like myself struggle with.
I’m not against coding tests per se… but only if they can be completed in a few hours max. But recently I’ve been asked to submit workable apps… along with tests and other features that quite frankly made me questioned whether or not I was spending my time wisely. Obviously I was not being paid.
I did 2 tests recently
Spotify React Client
This one was to test my skills with React. I had to create a client for the Spotify API with the following specs:
- Oauth authentication
- User should be able to search for any Artist
- User should list Albums and Tracks
- App should display the latest 3 New Releases
It took me a good 10 days to complete that test. I had no previous experience with React. I figured this would be a good opportunity to get up to speed. I also had to catch up on Redux, Babel, ES6, Webpack, ExpressJS and Bootstrap 4.
Rails 5.1 app with Postgres and React
This one was used to test my skills with Rails (my favourite framework), React, CSS, Rspec and Postgres. Basically I had to create an app with the following specs (summary):
- FB authentication
- Authorization for 2 user roles (basic user and admin user)
- 3 Rails resources
- 1 React component
- Theme using Bootstrap
- 1 test with Rspec
- Media queries with CSS to create a responsive layout for mobile
It took me about 4 days even though I have experience with Rails. I figured I should use Rails 5.1 (the latest). I got a few issues with wepback (I hate the asset pipeline - so I figured I would try not to use it). This time I was more confortable with React but I still spent about a day on that part alone.
So basically, I’m wondering if you guys had a similar experience with coding tests and where you draw the line. I was not confortable with the amount of unpaid time I had to invest but on the other hand I didn’t have any working apps available on my github account (only forks, fixes etc).
Also It’s entirely possible these companies will use my code on their projects. I wished I had been paid to submit a feature or bug fix. I think that would have been fair but I didn’t have much leverage to be honest.