Few months back I decided to change my job and become a Software Consultant. I applied for a job at Readify, one of the most well known consultant companies in Australia. I then Worked so hard on brushing up on many subjects because I knew it wasn’t going to be easy.
After a week of preparing myself and passing their online test which relatively was not so difficult, I got an interview appointment with Richard Banks. Richard is a Principal Consultant at Readify. I had the opportunity to sit at couple of his talks.
Well, not exactly sure why but I somehow messed up the interview. Maybe I tried so hard to be better than myself that I stuffed it up. After around 50 mins the interview was over and it only took Richard another half an hour to send an email to me saying No.
What I liked mostly about that interview was the feedback that Richard gave me. It was obvious that all the comments was handwritten pointing out specific reasons why my interview was unsuccessful along with feedback on how to improve and make things work better. As part of that feedback Richard suggested that I need to start a blog to write about technical stuff. Here is his comments on the interview:
I was pretty happy with the interview, but there are some gaps and shortfalls we noticed in your approach that we’d like you to work on.
Firstly, as we discussed, the unit testing approach resulted in you testing that the code was doing the wrong thing the right way, instead of going back to the test cases in the requirements file and writing tests based on those test cases. It’s not a hard thing to improve since it’s only a matter of slightly altering the high level goals of the tests you write and I’m confident you can make the adjustment.
Secondly, the way you described both RESTful APIs and the MVVM pattern was a little confusing. As a specific example, I think you were trying to explain HATEOAS when talking about REST, and possibly the Richardson maturity model, but I couldn’t quite tell.
Reading between the lines, I think you probably have a decent understanding of the concepts, but if I didn’t already understand them myself, I would have been left somewhat confused by the explanation. When working in consulting, confusing your customer is something to avoid.
I’m not sure what opportunities you have for practicing these skills, but you could try running some brown bag sessions at work, or writing blogs (even if you never publish them) to practice getting your understanding delivered to an audience in a structured and clear way …
Richard’s comment was like a wake up alarm to me. It reminded me that it’s been a very long time since I wanted to start a technical blog. Only to document my understanding of different concepts and possibly sharing that knowledge with others.
After spending couple of hours I found Async.Codes which in my opinion makes a lot of sense for a coding blog. For that name I was also inspired by an absolutely bad code which I’m reviewing these day. The programmer clearly didn’t/doesn’t know where and when to use async await pattern.
I hope the writings in this blog will first help me to improve my skills as well as giving the opportunity to share with others.
So here we go.