3 ms·
> It looks like a test for how good you are at over engineering things. < Sorry I typed it all on mobile, so laziness got to me. But it seems like that you mis
by splintercell 11y ago
> It looks like a test for how good you are at over engineering things. <
Sorry I typed it all on mobile, so laziness got to me. But it seems like that you missed the point of the test by a fair margin. The test allows you to judge overengineering too. The whole idea is, give them scenarios like this, suitable to your values and business needs. Every language has abstractions, and it is the decision to figure out good abstraction vs bad abstraction vs no abstraction.
Making a calculator class is an overkill IMHO, and this is precisely why the next task is to "create an interest rate calculation method which offers different interest rate based on credit rating", the whole idea is, that here any developer worth their salt, will be separated from the chafe. Of course, you will need to help them a bit to steer in the right direction, but the test isn't about knowledge, but of their perspective.
- tarsinge 11y agoI reacted at > If he implements a class Calc with two methods as Add and Subtract, then give him 5 points, if he just writes another method then zero points. Sorry for misunderstanding your whole point (no sarcasm, my english is not ideal)
- splintercell 11y agoOh I understand. What I skipped explicitly writing there is, if he writes an abstraction, and defends it well then give him 10 points, if he can't defend, give him 5 points. If he doesn't write an abstraction and defends it well, then give it 10 points, if not then 0....you get the jist. The fundamental point is, who can best figure out the requirements of the customer, and write code which makes most sense with least amount of 'future problems'.