Arrive at office.
I arrive at the office and have breakfast. I’ll have avocado on toast and a coffee today. While I have breakfast, I check my emails and messages. There are other new grads in London that I keep in touch with. Tibra has an in-house training programme called Tibra Uni. Around this time I also attend courses or catch up on course work. The office environment is very casual. I usually just wear jeans and a t-shirt to work.
Catch up with mentor.
I have a one on one chat with my mentor about how I have been going with my ticket. He is very knowledgeable about C++, and I always learn something when talking to him. In one chat, I learned about “if constexpr” which perfectly solved a problem I was having and is now one of my favourite C++ features. All new starters at Tibra are given a mentor to help them get up to speed with the workflows and technologies used at Tibra. My mentor has a desk directly behind mine.
At this time of day, all the developers in my team have a meeting, discussing what they did yesterday and what they plan to work on today. This meeting is online as some are working from home and some are in the office. These meetings are useful as often someone has a usefuldifferent perspective or idea I hadn’t considered before.
Continue to work on ticket.
After standup, I continue working on my ticket. I am working on some backend things that trading strategies use. Some of the code that I have written for other tickets is already running in production, which is exciting! I use Visual Studio Code to write code and the command line to handle compiling the code and git version control. When I need guidance about what behaviour is desired I either turn around and ask my mentor or walk over to one of the quants and ask them. Everyone at Tibra is very approachable.
Lunch at Tibra is always good! The food is delivered by local restaurants and changes day to day. If the weather is good and I’m not too busy, I have it out on the balcony with others. The office located directly opposite the beach and so there is a great view. I usually grab a can of flavoured sparkling water from the office fridge to go with lunch.
Back to work.
I grab a post lunch coffee from the office kitchen. I have almost finished with the ticket I’m working on; I just need to make a few final changes tweaks before I push the changes to the remote repository and start a code review. Other developers are going to look over the code I wrote and offer suggestions and feedback. Sometimes this is minor, like style issues. Other times I need to go back and rethink my approach. Code reviews are great for learning C++.
Starting a new task.
I had a chat with my mentor, and he wants me to compare the behaviour of two strategies. To do this I’m going to need to run some backtests (running the strategies on previously recorded data).
I have one of the back tests running, but I’m having problems with the other. It runs, but by looking at the application log files I can tell it is producing garbage output. My mentor has some meetings he needs to attend so I ask another developer for help. At Tibra, people are always willing to help when they can. I explain the problem I’m seeing and together we look through the code to find what’s causing it.
We found the bug! I make a ticket, assign it to myself, create a new git branch and start working on the fix. With the C++ experience and training I have received at Tibra, I feel confident that I can fix this on my own. This bugfix is on a tangent to what I was originally doing. I find this often happens in my work. In trying to solve one problem I need to solve another coming out of the blue, and then another. It’s important to keep in perspective the big picture of what you are trying to accomplish.
Finishing up for the day.
I’ve finished fixing the bug and have the other backtest running! I push my changes to the remote repository and start a code review. If it’s a Friday (or even a Thursday!) at this time of day beers come out and people are very relaxed. The office pool table gets a lot of use around this time.