The onboarding process at receeve is very organized. It’s divided into week cycles and each one of them has an Onboarding Review Meeting where you can give and receive feedback on anything and everything that is going on within the tech team. One of the first cool things that receeve offers is a buddy system, where a buddy was assigned to me to help guide me through the whole onboarding process. But also the whole team was always there to help me out with everything.
During my first week, I read a lot of documentation (from code styling guidelines to sequence diagrams, to technical domains), set up my development environment and then started to read the product coding.
It was very nice to find out that code quality and cleanliness is really an important initiative at receeve. And it was great to see that every subsystem is following the same patterns. So when you’ve seen one of them you know where to find everything in all of them.
My second week was my Baptism by fire–In starting my very first task. It was a big refactoring project, and it helped me to understand the working logic at receeve and the interconnection of different systems. It took me one week and part of the next week to work on it. All of it challenged my skills completely, but everyone on my team was open to providing answers to questions and reviewing the code I had written. So the stress of doing such a big ticket as the first big project was completely reduced immediately. I found it exciting to discover, while working on this task, the cleanliness of the code and how small and very domain-focused each subsystem really is.
One thing that surprised me was that there is no local replica of the ecosystem where you can test your code. Meaning every subsystem is hosted in the cloud and fully covered by tests. So when you are working on a task, you only need to cover your code with automated tests and then deploy it to the test environment directly in AWS. For me this sounded really crazy at the beginning, but it worked perfectly. And by not having the whole ecosystem running locally it meant that I would not have to struggle with any resources running out in my machine.
Another thing that I have enjoyed is how we are able to optimize our use of time. We have flexible working hours and developers are encouraged to take focus time to disconnect from communication channels and relax our mind. Also, everything, all of the work I get to do is exciting and challenging and all of our meetings are optimized and focused and with very little redundancy. Talking about meetings, the daily standup that I had been used to is held asynchronously through a Slack channel. There are a few other meetings, which let us organize the work and receive reports from the company status. So, yes, transparency is a really big aspect here.
The third and fourth week I started reviewing code from my peers, assisting QA checking my own tasks and I continued my integration into the team’s daily work. Finally, I also worked on more tickets, where I got to dive into different parts of the system.
The common saying is that “time run fast when you’re having fun.” This was definitely that case for me in my first 4 weeks at receeve. Being a remote-first company, it’s difficult to get a fluent relationship with the colleagues, but the team spirit is encouraged by having our open and Fun channel where we can share and discuss anything our heart desires. Even the dummy things. We are also having the Tech Club, where we get together and do some activities as a big group. We play games, have beer or wine, and the cool thing is that we propose any activity for the time. The last event was a very funny game of remote Pictionary.
I have to say that I’m very happy about how my onboarding time went. It felt like less than one month but I’m definitely looking forward to the next challenges in the coming months and years ahead.