You've probably heard of Boohoo Group; with brands such as Coast, Debenhams, Pretty Little Thing and Karen Millen under their wing, they've impacted the lives of millions of customers. But how much have you heard about the impressive tech stack that powers their organisation, processes and strategy? Get ready to delve into the world of a Java Developer in a typical week for them.
And, as they're currently growing at scale, there's never been a better time to work as part of their tech team. Working with Boohoo means you'll be part of the biggest online fashion retailer’s success story, as well as enjoy a lot of perks and benefits! Wondering how this could be you? Keep reading to find out as we were joined by Leah for a sneak peek!
I'm a Java Developer and I work within the Java team at Boohoo, currently working on a payment integration project where I implement payment methods for different brands and regions for the web and app. I originally joined Boohoo as an IT intern in 2019 whilst on a placement year in between my second and third year at university, where I worked for the company for a year. I then returned back to university for the year and was offered a graduate role for when I finished my studies, as well as having the opportunity to work part-time whilst finishing off university. After working as a graduate for a year, I was promoted to a Java Developer, which I have been in the role for about 8 months. Here's a typical week in my life:
Morning: Worked from home on Monday so woke up at 8:15, made myself a coffee and some breakfast and started work at 8:40, before getting to work I checked the Java dashboards to see if any queues need clearing and then checked the metrics on Datadog for the application I’m currently working on, making sure payments are processed fine on live. Afterwards, I reviewed a member of my team’s PR as it is a refactoring PR for Adyen Credit Card so it was a longer PR than usual and needed a thorough review. I then updated the credentials in Secrets Manager for a brand and region to test if it works on Adyen Credit Card with the new credentials, which worked successfully. This means that can be picked up by a tester to progress and unblock them. I then finished off and tidied up the PR that I was currently working on to remove a dependency within the project and use a dynamoDbClient instead to do the functionality and call that from the rest of the project. As this refactor removed a dependency I was able to write controller unit tests for the refundController within the project as it no longer relied on the removed dependency.
Afternoon: I raised a change log for all the PRs that have been merged into development since the last release to production so we’re aware of all the changes that will be in the release this week that we planned to do. I then went on my lunch break at about 1 o'clock. After that I raised a change request to get approval for the release that we have planned for Thursday, detailing all of the changes we want to release and the potential risks attached to each of them. I then finished off for the day at 5:30.
Morning: I got to the Boohoo office at 8:20, caught up with the team and made a coffee in the kitchen and grabbed a breakfast bar. After checking the metrics for the application I’m working on, I make sure that there are no alarming errors on live and that payments were going through successfully. We then had a full team standup at 10:30 where the IT department discussed team/project updates. I then picked up a ticket to update the unit tests to align with the new refactor work and to also update to use Jupiter as with the Java 11 upgrade the tests are now required to be updated otherwise they don’t pass when run individually. For the controller unit tests, I used mockMvc to mock the endpoint calls and Reponses to check they are either successful or have a bad request/ bad gateway response.
Afternoon: Had a Datadog x AWS online event from 11 throughout the rest of the day, so joined the remote call and watched the presentation and joined in the practical sessions throughout the event. Was able to learn the benefits and possibilities of integrating Datadog with AWS. Went to grab lunch from the kitchen downstairs with the team at 1:00 in between the AWS event. I then finished off for the day at 5:00.
Morning: I worked from home on Wednesday so woke up at 8:15, made myself a coffee and some breakfast and started work at 8:40, before getting to work I checked the Java dashboards to see if any queues need clearing and then checked the metrics on Datadog for the application I’m currently working on, making sure payments are processed fine on live. Picked up the ticket I was assigned the day before to refactor the unit tests and fix them so they successfully run with the next credit card refactor implementation, worked on this for the majority of the day.
Afternoon: I grabbed lunch at about 1 o'clock again so ate that on my break whilst WFH. Then we had a weekly catch up for the project I’m currently working on to discuss requirements and progress made so far and next steps for the next brands and regions we wish to enable. This is so we’re all aligned with the app team. I continued on with my PR for the rest of the day and finished work at 5:30.
Morning: Worked from home on Monday so woke up at 8:15, made myself a coffee and some breakfast and started work at 8:45, before getting to work I checked the Java dashboards to see if any queues need clearing and then checked the metrics on Datadog for the application I’m currently working on, making sure payments are processed fine on live. Had a meeting in the morning to discuss a potential rollout plan for an upcoming release which is refactoring the credit card flow, so discussing the pros and cons of different ways of rolling out.
Afternoon: Had lunch at about 1 ish and then in the afternoon did a release to production for the application I’m currently working on for my project, this included a payment method integration for PayPal and a couple code refactors and improvements such as upgrading to Java 11. We use AWS CodeCommit for our PRs, so for the release, we merged the development branch to production and then monitored the Datadog logs afterwards to make sure it was working as expected and there were no issues. I then had a meeting with another project team to discuss the next steps for development/testing to integrate PayPal onto the Debenhams platform. I finished work for the day at 5:15.
Morning: Got to the Boohoo office at 8:30, caught up with the team and made a coffee in the kitchen and grabbed a breakfast bar. Checked the metrics for the application I’m working on to make sure there were so alarming errors on live and that payments were going through successfully. Picked back up my ticket to refactor the unit tests, so was testing all of the controller tests passed successfully as well as the updated service tests, once they had all passed I tidied up the tests and got the implementation up for PR for my team to review the changes. Then I investigated an issue we were seeing on live where we were getting errors for WorldPay Credit Card Errors due to TOKEN-SSL being Incomplete, upon further investigation, it looked like the same customers repeatedly trying to place their order but supplying incorrect information – thus wasn’t an integration issue.Afternoon: I grabbed food with the rest of the Java team from the kitchen downstairs and sat in the canteen to eat lunch together. Later on, I updated our confluence page where we track our projects' progress so we’re all aligned on where the current work is up to, and cross-checked all our brands/regions and payment methods to check what is enabled and what work has been done and if anything is blocking any work streams. I then picked up a new ticket to refactor our controller implementation for Adyen and Worldpay ApplePay to move most of the implementation into the service for it to be handled there instead and tidy up the way we return responses based on the platform sent
And that's it!
Fancy working for a company as cool as Boohoo? We've got you covered – head on over to our platform where you could be matched with them. It takes just 5 minutes to sign up.