One day (actually my birthday), three interviews, three quite different agile companies in London. And one head-hunter repeating continuously "Be positive!", "Be enthusiastic!.
This day was fun!
The first company was by far the best! I arrived at place a little bit too early, so I went searching for a coffee. And to my surprise a nice lady gave it to me for free. Next, I went to nearby park, which turned out to be an old cementary. Nothing better soothes your mind then being confronted with reality of death...
The first interview was really well structured. It was conducted in 5 parts
:
- Introduction
- Writing code in pair
- Technical interview
- Cultural interview
- Conclusion
I enjoyed coding the most. It was my first experience of pairing with somebody who actually practiced pairing. Before I only paired with people who never did it before. It's kind of hard to teach somebody, stuff that you can't do yourself yet. Of course, as it was my interview I had to show off doing everything super correctly with a perfect TDD life-cycle. Although I lacked some skills, the interviewer was quite gentle to me. And above all it happened in a shared space where all engineering staff is working. I could literally feel the good and friendly atmosphere inside.
Technical interview was checking deeply all I dared to put into my CV. Of course I was asked about SOLID development. We discussed what I think about pairing. And fortunately they asked about REST which allowed me to shine at least a little bit (I taught REST to graduate students in my previous job).
Cultural interview was just chat about being open, about self-development and agile process. Piece of cake. I had no experience, but I read enough about agile to know how it should look like. They asked me also if I am able to work with legacy code, what a question, of course I can work with legacy code! How little did I know!
When I was leaving the building I was feeling pretty good. I liked the company, and the company seemed to like me.
When I left head hunter called - "
Be enthusiastic, be positive!"
The second interview was a really well structured disaster.
I came in late (couldn't find damn place). Sweating I came into company office, and I was placed in a small room with glass walls. They gave me some form to fill, which basically required me to repeat stuff from my CV.
Then two guys came in dev and a lead. The first thing I had to do was coding exercise on a code base I sent to them before. I failed miserably. I tried to write this code to the best of available architectural patterns. However, it was pretty hard to extend it the way that the task given to me required. I was trying, but it was simply impossible in the short time limit I had.
When I was going through my ordeal dev was concentrated and helpful, however lead guy was checking emails on his phone. He didn't stop doing that even when I finally stopped coding and they asked me some questions.
I left the office as fast as I could. I thought that they would not hire me for sure. And it seemed like working there would be kind of hard.
When I left head-hunter called - "
Maybe it was just your impression that it was a disaster? Nevertheless, be enthusiastic, be positive!"
The third interview was more like a quick meeting. CTO said at the begging that he wants to meet me (probably I had non standard motivation letter).
We started with a short chat with CTO, during which he was obviously making lot's of notes. The guy was very calm and friendly, it was actually really fun discussing with him how he perceives agile. Technical part of this was limited to question about SOLID and DI.
Then I was led to dev space and two guys were asked to verify my technical skills. On of them didn't even react to CTO and me coming. The other started to talk to me, but didn't even offer me a seat. I felt a little like they don't want me there. What a pity, CTO was really nice, but he warned me that company is in the process of transformation to more agile approach! It is not that devs were unfriendly, they just didn't care... The guy who gave me exercise was completely unprepared. First he asked me to make a web page prettier in 10 minutes. I still don't get what he was expecting, I spent 8 minutes looking for any useful, free CSS and then in 2 minutes I hooked it into their MVC view. Test passed. Then he tried to test my coding by adding some feature to their code base. I really tried, but to just get required class under test I had to create something like 8 dependencies! I had no idea what they were and how to do that. In the end he changed exercise to writing in tdd 2+2 exercise. LOL. When I asked about a number of interfaces passed to a class, guy had no issue with that... Not good. I was in dare need to learn, not to teach.
After all those interviews I called head-hunter.
- "
So where do we meet for a promised beer?"
- "
Can you come to the Victoria Station?"
- "
Sure I can, for the whole day I was travelling all around London!"
- "
Let's meet up there."
To make long story short. All three companies decided to hire me. One of them was proposing to hire me as a full dev, rest wanted me as a junior (as I was applying for a junior role). And guess what, this was the first company. Great birthday present. I earned the tab!