On July 10th, I joined Namshi as a Junior Software Engineer. I was really excited to start my first full time job writing software. Though, I have to confess that I was also a bit afraid and nervous. Fortunately, after just two days working with the team the fear and nervousness went away. In this post, I will share with you some of the things I have learned so far as well as what I love about working in this awesome team.
Everyone is super nice
From the first day I joined the team, everyone has been going out of their way to help me and make me feel welcome. In order to better understand the business as a whole, HR arranged for me to meet people from many other teams such as warehouse, business intelligence, and project management. All of those people were really nice and did a great job explaining to me how their department works. In the tech team, I have interrupted some of my colleagues countless times to ask questions and they have always done their best to give me answers or point me to someone else who knows the answer. The VP of technology, Alex, who is also my manager has urged me to not be afraid to ask questions and discuss things with our senior engineers. In my opinion, this ability to ask questions without feeling like you are being annoying to your peers is crucial for a smooth integration of a new member, especially a junior like me, onto a team.
Code quality is taken seriously
On my second day, I was assigned my first task. It consisted in building a tool that could read a csv file containing a list of products and download the the image for each product from a website. This tool was for the PR department and it would reduce the amount of time it usually takes them to send new products images out to the press. Since the end users only have windows machines, the final product was supposed to be a windows executable. Because of that requirement, Alex suggested that we use the Go programming language; a language I hadn’t used before. Ayham, one of the senior engineers on the team who was also new to Go buddied up with me to work on the project. We started by brainstorming ideas and drawing a workflow diagram. Then, we moved to the coding part which was really fun. We managed to get something working by the next day. At one point, after making a few improvements to the code, I looked at it and thought to myself “ok, this looks great, we are done here”. But to Alex and Ayham, there was a lot of rooms for improvement. Therefore, the code went through multiple rounds of review. Each round, we were trying to make it better and better. I remember Ayham always asking “can we do this in a better way?” This experience taught me that even though code will never be perfect, it is still possible to attain good quality code if we care enough.
Learning happens everyday
Everyday, for the past two weeks, I was able to learn something new. I have learned about proper debugging techniques, Golang, how to be more productive by using keyboard shortcuts and how to break down the solution to a problem into steps before diving into coding etc… Not a day has passed without learning something new either from my manager—who is by the way an excellent teacher— or from my other colleagues.
Work-life balance is encouraged
We work from 9:00 am to 6:00 pm including one hour for lunch break. I often hear people say at one does not leave the office before one’s boss. But here at Namshi, that is not the case. After 6 pm anyone is allowed to go home even though our manager is still around. In fact, I have noticed that if our manager wants to discuss something with a team member after 6pm, he will always asks something along the lines of “do you have 5 minutes or are you leaving now?”. And to top it all off, on Thursdays (the last day of the week in the UAE) everyone is allowed to leave the office by 3 pm to go and start enjoying their weekend.
I have one of the best managers in the world
My manager, Alex, is really awesome! I’m sharing this because apparently great managers are rare. The first time I interacted with him was during my first interview. I was really impressed by how he took the time to explain to me the answers to a few questions I could not answer. Then after joining, I have seen him teach, discuss ideas with, and help members of the team —especially myself— on a daily basis. For the past two weeks, at the end of each work day, we spend about 5 minutes talking about how my day went, asking me for feedback for the team and giving me constructive feedback for myself. In addition to that he checks on me throughout the day to get updates on my progress in whatever task I’m working on.
All in all, I feel really blessed to be part of this team of talented and friendly people. I’m really excited for the long and fun road ahead.
If this blog post got you excited about the prospect of joining our team, please do send in an application as we are currently hiring :)