Networks? Yeah I think it’s cool. Distributed Systems? I want to try building a distributed app. Machine Learning? Sure! I’ll take the machine learning course on coursera because for sure building a recommendation system is fun. Kernel Hacking? Yes it’s kernel hacking, I want to be a kernel hacker! Whenever I find something new, I get excited and start reading about it for a while and then nothing. OK, Let’s ask a question on Quora maybe I’ll get some help. Honestly most of the answers weren’t helpful at all. Most of them suggested that I should switch fields. I guess they didn’t get what I was asking about. But one answer suggested something that I think is correct to a big extent.
The answer made sense. I’ve never for example worked on anything related to machine learning before but I saw its applications and they are cool that’s why I wanted to learn about it. It’s not bad at all to learn about something because it’s cool, the problem is that it wasn’t interesting enough for me to spend my time learning more about it. That’s when I got an internship offer from Trustious. I knew about Trustious before and some of my friends did an internship there. I knew about how good the team there was. I spent some time thinking about it and then I accepted the offer. I can say that this was one of the best decisions I took in 2014.
I finished my three-month internship and continued as a part-timer throughout my 7th semester and I can confirm what I’ve heard about the team before my internship, the team is awesome. While working at Trustious, I got exposed to different things, technologies and even fields from what I used to work on before. I worked with the speed team, the analytics team and I’m currently working with the infrastructure team. But most importantly, I found my passion. I love writing scripts, I love automating tasks, I love managing servers and I love the infrastructure work. I still can’t find the suitable title for this job but at least that’s the job description.
I can write a separate blog post about the technical things I learned at Trustious but I’ll try to mention some of them briefly. First of all, I started using Vim and tmux as my default development environment. My bash knowledge was almost doubled. I learned about docker and started using it heavily. I developed a distributed docker-based test parallelization framework in bash. I learned about caching and got the opportunity to introduce lots of changes to the caching infrastructure. I learned about A/B testing and feature toggles and developed a rails library for each of them. I learned about Jenkins and designed the CI system. I helped in building our small in-office testing cluster . I couldn’t have learned or got exposed to all of this without their supervision.
One last thing that is worth mentioning is those tournament days. Those days when we come to the office just to have fun . In the office, there is a box containing lots of card and board games like The Resistance, Therapy, Star Flux - I love this one - and others. If you don’t like board or card games, you can play other games like Jenga Boom, bowling with empty plastic water bottles or Pictionary. Ah, I lost many Gladiator Duels using Playstation Move by the way
You guys are great, I’m proud of being part of your team. Thank you for this wonderful experience!