Fyber Faces: Gaurav S. R. on Ruby, Nietzsche and Life in Berlin
We continue with Fyber Faces, our blog series that highlights members of the Fyber Nation that embody the company’s core values both on and off the job.
This time, we caught up with Gaurav Singha Roy, Senior Software Engineer, to pick his brain about Engineering at Fyber, and his specific route into the software engineering career.
Gaurav is originally from India and studied his BA in Computer science there. His MA studies brought him over to Germany, where he’s been living and working ever since.
Q: Why did you choose computer engineering as a career?
You would laugh, but I saw A Bug’s Life when I was young and was fascinated by the animation. My uncle, who is a software programmer, sat me down and explained how animation worked. We talked about what an animator (who today, is essentially a computer engineer too — not just an artist) has to take into account when writing code, such as the laws of physics and motion.
Q: Why did you choose Germany as the country for your study?
My main wish was to study in the university where Nietzsche studied, as I’m a huge fan. That’s how I wound up in the University of Bonn.
Q: That’s an unusual idol for a computer scientist. Do you like writing yourself?
Actually yes. I write in my free time, and my last short story even won a competition in the UK. It’s called Mr. Checkers and you can read it online.
Q: What about technology?
My main field of expertise is Ruby on Rails (also called RoR), and my passion lies in graph databases and information retrieval. At Fyber, I work in the Application chapter and it is our responsibility to maintain everything from the web, to mobile, to browser and databases. It is a place to play around for anyone who wants to see how scalability or big data works.
Right now I code in Ruby, but I am also learning Scala, as we get some free time to learn new languages or work on new projects. On the first Friday of the month, for example, we have what is called a “Freaky Friday” when everyone gets together and develops some interesting new ideas in collaboration with others or on their own.
Q: So what projects did you work on for the last “Freaky Friday?”
The various components in our systems communicate through the popular distributed messaging system, Kafka. Sometimes it becomes important for developers to check out the messages that have been sent through these tunnels (as traditionally you can only check them out through your command line terminal).
As you can imagine, it can sometimes become cumbersome to check for certain messages. To overcome this anomaly, we worked on a solution where all these messages are stored in a user’s local computer’s instance of the ELK stack. You can then use the power of Elasticsearch and the beautiful Kibana interface to sieve the messages you are looking for.
Q: What can you tell us about your day-to-day work as a software developer at Fyber?
Well, mostly I can tell you about working with the agile method. We work in sprints and follow a really nice Kanban system in the Application chapter. Furthermore, we modify it after every review to suit the project we are working on better.
We also have agile coaches and with them, we learn to work as a team but also to understand agile processes and why we work in this particular way. In Technology, we also become the stakeholders of the projects we are working on, so we meet as a chapter and decide on priorities and time management.
Q: So do you work cross-functionally?
We have a system where Product works together with Technology.
Developers meet weekly with Product department and discuss a new product or feature to identify the best way to approach the development process, what the requirements are, and how teams have to be organised in order for the project to succeed. This process allows us to make informed decisions about the weight and importance of any new undertaking.
We have code reviews between different chapters, and we also have bi-weekly knowledge-sharing sessions with other departments where we discuss how we can improve our knowledge of various parts of the Fyber system. For example, we ask the data science chapter to come and train us on new tools that they are introducing and we never used before.
When we work on a project, we invite not only the product team but also the end users. As another example, when we work with the anti-fraud systems, we invite the inventory quality team to get their feedback on the issue before going to production.
Q: What else do you enjoy about working in Berlin?
I love the fact that Berlin and Fyber are so international. English is the official language of the company, but in the streets of Berlin it’s essentially the lingua franca as well, so communication is easy, even if your German is not up to scratch.
You get to mix with so many people, and we try to facilitate it even further. For example, we have people from 45 nationalities at Fyber, so we do a chapter breakfast every two weeks, where we take turns cooking food from our home countries. We also share ideas, discuss projects or just chat during breakfast.
So here it is, a look into the life of a software engineer in Berlin, and specifically at Fyber. Interested in learning more? Review our open Tech and Engineering positions here.