I was given a small project to complete over the weekend for an interview. Not a very difficult project at all. Fortunately, I was able to spend all my time designing, developing, and testing the application rather than having to research something I wasn't familiar with.
After working out a couple of critical bugs, I am left wondering if I should add anything more to the assignment. Assume, at this point:
- everything is commented
- no bugs found
- any known exceptions are handled
- 8 hours remain in allotted time
So, is it better to go ahead and submit a bug-free, working assignment earlier than the deadline?
...or ...Take the fully allotted time to add a feature (obviously something simple like logging)?
...or ...Provide a list of TODOs that could improve flexibility, scalability, or general usability? These would be improvements that simply could not be done within a day or could introduce too many issues to resolve in the time allotted.
FWIW: the project consisted of creating a multi-threaded sort controller implementing 3 different sorting algorithms; results to be displayed on WinForms UI.