man and woman working together in an office

Getting started in data science R&D

By Kira Iankovskaia on February 2, 2022 - 5 Minute Read

Hello there! I’m Kira and I’m a data scientist graduate at Peak. I joined the graduate scheme right after finishing my MSc in Business Analytics at the University of Manchester.

You might have already come across the blog posts written by my fellow colleagues, Amy and Ben, and are familiar with what we do, but allow me to repeat just in case! We are the first cohort of graduates who started on the scheme rolled out by Peak last year. During 12 months, we are rotating across four different data science (DS) units: Retail and Manufacturing Operations (Ops), Insights and Research & Development (R&D).

My graduate journey at Peak started at the R&D team. The R&D team is a relatively new, but fast-growing team within Peak’s data science department. The team is focused on the development of packaged DS solutions and supports the wider Operational team in various areas of expertise.

The R&D team is notorious for lifting heavy-weight questions and solving complex problems! At the time it seemed a slightly daunting but very exciting opportunity! This post is to diffuse any unnerving feeling by telling my story about what it’s like to be in R&D.  

How it all began!

The work we do in R&D is primarily project-based. However, the research-driven nature of the projects is what distinguishes them. While these are inspired by specific customer use cases, R&D projects aim to target the technical and business problems Peak has encountered across a number of distinct customers. There is an ongoing list of solutions and/or applications that have been launched, are in development or are awaiting further research.

Because these are subject-specific, there is a variety to choose from – usually including at least a couple that most fit your interests, skills and effort. For example, considering my Master’s dissertation work, I chose a range of topics that were proposed by my colleague Luke (Peak’s inventory optimization guru!) With him, we gave these projects T-shirt sizes, taking into account not simply the total time but the effort each project is likely to require with respect to my experience. That proved to be an effective approach as it gave me a clear picture from the start of what I was setting out to achieve.

Together, we decided to work on a Lead Time Variance project that forms part of a wider group of inventory optimization problems. The main purpose of the project was to combat the assumptions of lead times being normally distributed within the supply chain and to get a better picture of how it affects inventory policy within the business. Lead time is often wrongfully assumed to equate to transportation time. However, there is much more to it! Total lead time combines all the waiting times such as production, preparation and planning, which all add variance. And a stretch goal for the project is to contribute to the existing Peak packaged solution of safety stock estimation.

Since safety stock provides businesses with a buffer for the uncertainties not only from the demand but also from the supply side, the absorption of the lead time variance would increase the accuracy of Peak’s proprietary safety stock solution. 

Currently, the Peak safety stock package accounts for demand uncertainty by stochastic modelling of the forecast volatility. There is a range of available volatility models to estimate safety stock more accurately and protect businesses’ inventory management from random demand shocks. For someone who has just finished a degree, it was exciting to see how the project you are working on can be applied to a real-life customer problem and what impact it can make. 

In addition to the project’s objectives, I was encouraged to set personal goals to achieve during my R&D rotation. I picked three main objectives for myself: to improve my programming skills, to learn best coding practices and to gain confidence. On the path to achieving them, a few challenges were faced – but I was never alone in tackling them!

I picked three main personal objectives for myself: to improve my programming skills, to learn best coding practices and to gain confidence.

Kira Iankovskaia

Data Science Graduate at Peak

Challenge? Bring it on!

At the beginning of the rotation, having just completed a year of remote studying, it felt completely different to start going into our Manchester clubhouse while still combining it with online meetings. With such a contrast, time management was a bit of a struggle for me at first. However, within R&D, for the sake of everyone’s wellbeing, productivity and visibility, a few techniques are applied which I quickly picked up:

  1. First of all, setting OKRs (objectives and key results.) These are set and reviewed on a quarterly basis and would normally sum up to three main objectives with well-defined key results against which the progress can be measured.
  2. Secondly, the ongoing review of work or rather the reflection on it is done in sprints (two weeks for R&D.) This helps to set clear short-term goals while highlighting and learning from past achievements. 
  3. Finally, the use of the Trello board where you can break your work into short and sweet tasks facilitates that retrospective view on sprints. And it’s very satisfying to drag the task cards to the ‘Done’ column!

The combination of all three of these played a key role in helping me adapt to a new workspace. 

Another challenge was my desire to ensure that everything is perfect from the start. But watch out, it’s a trap! Luckily, throughout my work on the project, I was prudently guided by Luke, who shared some software development wisdom with me! Now I’m sharing it with you…

  1. It’s always a good idea to start simple. You can always add complexity later, but if a simple model works well, it’s already better than a complex one you haven’t built yet!
  2. Sketch functions’ API (application programming interface) first. That prevents a mess of functions afterwards and makes it easier to see and hence to code the dependencies in a model. 
  3. Test-driven development! Work backwards; if you know what should be returned by your function then write a test for it first. That way you will account for all the arguments the function should take and what assumptions are to be made.

Rotation in retrospective

By the R&D best practice book, at the end of my rotation, I want to look back and reflect! It’s as simple as asking yourself three questions! So, without further ado, let’s do it:

What went well?

First and foremost, all the personal objectives I set at the start have been achieved, and the learning curve skyrocketed over these months. The software engineering training and learning by coding gave me a solid technical foundation and helped in overcoming any feelings of imposter syndrome.

Another win was not giving in to the challenges, but rather constantly improving by embracing them. And it could not be overstated that all that happened with the help and support from the amazing Peak R&D team – it was an absolute honor to work alongside them.

What didn’t go so well?

Of course, there are always things you won’t be 100% happy about and I’m far from being an exception. The main one for me was a constant ‘there is not enough time’ and ‘I’m too slow’ feeling. Yes, it took me time to adapt to a business-paced environment after academia and yes, I was slow at times. But what did not go so well are the expectations of the reverse: me thinking that it was possible to achieve everything to perfection in just one day! 

Those are wrong and destructive assumptions – almost like the normality of the lead times distribution for the safety stock! Ironically, while exploring how to account for supply variance mathematically, I initially expected to achieve it in a volatility-free way. Realizing this wasn’t always possible was a great learning experience for me. 

What can be improved?

Many might not have expected it, but besides data science-related aspects, there are a few good life lessons I’ve learned during my rotation at R&D: 

  1. Start by setting realistic and clearly-defined goals. These might change as you go, but if your goals are blurry from the start, it makes it harder to even begin the journey.
  2. It’s OK not to know something and to not do something perfectly on your first attempt. Something that everyone knows already, but I’ll say it once again (mainly to myself) – no one knows everything! And no one expects this from you. So calm down and focus on the learning and development experience.
  3. Reach out for help as soon as possible. That’s why work is done in teams and not in isolation. There is going to be someone who’s dealt with your problem before – and if not, it’s always more fun to search for a solution (or bang your heads against the wall) together!

And just like that, in just three months, my rotation in R&D came to an end. It’s sad to be leaving, but those three months gave me a wealth of confidence and knowledge which I’d like to carry over to the rest of my journey with Peak.

Join Peak's inclusive data community!

The Peak community exists to support data scientists and analysts who want to make a difference and drive change within their organizations.

Stay in touch!

Subscribe to our newsletter to find out what’s going on at Peak

Subscribe today!