| Sure, but I'm not sure how much progress you're going to make in the 2-3 hours one would spend on a speculative take-home task (they've stated there is no guaranteed interview). You're going to be judged on how well the end product works, so if we start with the following tasks, and you have 180 minutes. 1. 20 minutes: their stack's boilerplate/tooling 2. 10 minutes: unit testing boilerplate 3. 20 minutes: integrated testing boilerplate (browser automation is a fickle beast) 4. 20 minutes: basic database entity + database setup 5. 20 minutes: basic UI page + frontend setup 6. 20 minutes: replace default styling (their guide talks about UI "polish") That's 110 minutes and nothing more than a pretty display from the database. The task will almost certainly ask for more than one user action. I might be able to write an action in 20 minutes, but there is no way I can write good tests, seed test data for integrated testing, and keep each commit atomic and green. So, do you choose to have a tidy commit history and complete test coverage, or do you choose to complete the task? |
Estimates are almost always under.
As you point out the most basic project setup takes time. And I am working on a home laptop, not my work machine, so I don't have everything installed in the same way as I do for a work setup (that's usually at least a days work in itself on a new work machine).
Also it is not uncommon to find some strange issue that will take a couple of hours to fix if you are unfamiliar with it. Last technical test I had involved using Django's chache framework. I have used Django a lot, but not really used the cache in depth. I got everything working in the end and they failed me for the most trivial reasons.