I came across a post about pennies in the process which reminded me of some of the high-ceremony estimation sessions that I’ve been to that seem to run days, and not everyone is utilized, and some in which I had to come up with estimation on my own with some consultation with other people in development.

Canada is planning to get rid of pennies. I went to Lebanon recently, where there is no concept of pennies. A few other countries are going down that route as well – primarily due to inflation where the purchasing power has been eroded, and to manage them becomes expensive.

Having read a brochure by GreySpark, it reminds me of the the process drag created which elongate the project such as filling out forms at the end of the different stages (which no one reads, and is only there due to the process), not considering non-functional requirements, or working on slow-dated machines, and large solutions with many projects which cause development time and the learning curve to increase. Using tools such as Resharper save a lot of typing time, makes running tests quicker (compared to what Visual Studios provides for MSTests). Avoiding creating custom frameworks, or solving small problems which have already been solved is also useful (e.g. ConcurrentDictionary in C# for storing values with its AddOrUpdate method, System.Lazy for singletons, an using (P)LINQ rather than writing loops are .Net 4.0 code specific examples).

Looking for a job is always an interesting experience. You learn and talk about your skills, how the experiences relate to what the company has been doing, and how you can help the company achieve its goals.

For those that are wondering why I have the brackets – There is the technology stack such as here is the other one. The physicial one Zsolt and Martin Fowler such as U-Pod arrangement in lieu to Central.

However, when interviewing, ALWAYS see where the developers are seated, the layout as mentioned above. It is easy to get too much into the process – phone interview, coding challenge, meeting colleagues and managers in meeting rooms, however, in one of the places I went to it seemed rather different and congested. Asking to see where the BA, PM, Business and Developers sit (an office tour basically). The developers were all in a windowless basement which seemed like a converted wine cellar with dull yellow lights that may have been white at some point, and grey concrete floor. On the other hand, I also interviewed at some hedge funds based in building that might have some long history with amazing chandeliers and “expensive” portraits – something out of a mystery movie. Interviews are always interesting!

Passing the code challenge is the easiest part which many developers seem to fall down on. Unfortunately, they take 4-8 hours to do depending on the level of Unit tests you do. This requires a lot of investment in time and effort.

The quickest way to pass is:

1. Use a factory to create different objects (Vehicles, vouchers, etc..)

2. Inject the Algorithm which does the calculation

3. In testing, use mock objects for this algorithm

4. Create a readme about your thoughts, and what could be improved in the code. This is beneficial as the code will be reviewed by someone whose opinion will sway based on the readme.

And that’s it. You’ve demonstrated use of patterns, unit testing and mocking, and will make it to the next round.