Formula 1 cars are known for their cutting-edge technology. But have you ever wondered who codes the software that makes it all possible?
Position: Application Software Development Engineer, Cadillac Formula 1 Team
Time in industry: 4 years
Getting his start in motorsports
#1. What was the first moment you can remember discovering motorsports?
It was on TV when I was a kid. I was about six or seven and it was Australia 2002. And it was that race where at the start I believe it was Ralf Schumacher went over the top of Barrichello into the first corner and just chaos happened. And I also watched Juan Pablo Montoya just absolutely go head to head with Michael Schumacher, and it was as soon as I saw that I was hooked.
I also grew up around motorcycles, as well. So there's always been something there.

#2. When did you decide that this is where you wanted to build your career?
To be perfectly honest, I wasn't fully going into motorsport for a long time. I thought it was completely unobtainable. I had no idea how to get into it. So my background really was going into games development. I've got a master's degree in game software development. And I was fully committed to going into games.
There was a bit of a moment when I was at university. I basically turned around saying the industry wasn't really what I wanted to go into in the end in terms of the work life balance and just generally how employees were treated in the games industry at that time. And I kind of had a step back in my final year and said, sort of like, “is this really what I want to be doing?”
I enjoy coding, I enjoy programming, but is it really the industry that I want to work in? I could see myself burning out quite quickly in that case.
So I think after that, I took a bit of a step back and thought about the things that I really enjoy doing and what I am really interested in. And motorsport was there. I mean, I was more into the motorcycle side of things, but Formula 1 had always been there and just motorsport in general. So I think after that, I took a bit of a step back and thought this may be the way to go.
And I decided to just take a bit of a leap of faith; sent out my CV to pretty much the entire grid at this point. And after that, I was just riding the wave.
You just looked up anyone and everyone you could find and sent out your resume to people and just hoped it would turn into something?
Pretty much, yeah. So I recently got fired from my first sort of proper job out of uni. It didn't work out. It wasn't the best place for me. And after that, I just thought, you know what, why not? What have I got to lose in this situation? So I looked up all of the various positions that were possible with my background. And I didn't even realize that programming was really something that was needed in motorsport at the end of the day.
I sent out my CV to a fair few advertisements that were there for roles that may want to take me. And luckily enough, Haas decided to explore that with me.
#3. What was your first role in motorsports with the Haas F1 Team?
I was a junior performance software engineer - I believe that was the full term. But I did a bit of work with the control systems guys as well. That was working along with tire pressure systems, programming the front end so that the engineers in the garage could see all these values coming from the tire pressure system and what it was actually meaning because when we were first doing it, it was coming through a sort of binary code and we had to translate that into something meaningful.
So that was really my first task I was really working on. There were a few other things, but I'd say that was probably the main thing I was working on at Haas.
Josh’s current role
#4. What’s your current role and what does a standard day look like for you?
It's never a standard day. There's always something different. So at the minute with Cadillac, it's very much prepping for the 2026 season. We're really pushing for it. And so a standard day for me, at the minute, I'm in control of what the engineers on the pit wall and in the garage are to be seeing. So, having a meaningful way of representing that data that's coming from the car to the engineers so that they can make the informed decisions that they need to.
This is also for monitoring as well so that we can actually see what's happening on the car at any given time.
#5. There's a lot of precedent that's been set before, but then you're also a new team, so you get to come in and break glass, so to speak. What are the most rewarding and the most challenging parts of your role?
Rewarding
It's a bit different with Cadillac because we don't have that reward just yet, but the most rewarding thing will be - from past experience - finally seeing that car out on the track, out on the grid, performing well. When we see that happen, it will have been a year, two years worth of work that I've been putting in for this really being put into fruition. And seeing that is going to be so rewarding, honestly.
And just seeing it as part of the team. There's so many people at all of the teams that I've been with and worked together with. And they’re human beings, so seeing them reach that same goal is fantastic in my opinion. You know, working towards that goal for two, three hundred people is a big deal.
Challenging
In terms of the challenges, currently it's pretty much the time that we've got. We're going to be on the grid next year and clock's ticking really to make sure that we've got everything ready.
But from a general standpoint, not from a new team, it's making sure that the software that we develop works first time, every time. And it's reliable. We can't have somebody on the grid setting the car up on the pit wall and there's a bug that happens with the software because nine times out of ten we're not at the track. We need that software to run perfectly every single time. So robustness in our code is critical really.
I can say with a story that I've had once before at Haas. When we were first getting the system up and running, I had my boss at the time over [Microsoft] Teams with me at whatever time it was - he was in Sochi at the time - because there was a major bug that we couldn't get working. We needed that sorted for Friday practice. So, we went as long as we could on Thursday night to make sure that was working. And thankfully we got it done just in the nick of time. But that time pressure is I'd say the biggest challenge.
#6. What are the top 3 qualities that have helped you succeed in your role?
Attention to detail
I'd say attention to detail when it comes to the code. I'm a massive stickler for making sure that my code is clean and reliable. The way that I approach it is that I make sure that if any other person comes into this role… If for example five years down the line I'm onto pastures new, I'm somewhere else. If somebody else can come straight in and look at what I've done, look at the comments in the code and say, “yeah, this bit does this and this bit does that. I can fully understand what this system's doing.” That's basically mission accomplished for me.
So I'd say having the reliability in the code and the cleanliness of the code.
Goal setting
Making sure that you set your goals out in as small chunks as you can. I suffer for a long time with getting overwhelmed with a big task.
So I'll see like, oh, we need to get this thing done. And I'll be like, “my God, what have I got to do?” So if I split that task down into smaller chunks, I can see, right, if I can schedule this to work by now and then get this done and then get this done, it builds it up, which is fantastic for me.
Openness to ideas and feedback
And I'd say the other idea, the other thing is being open to other ideas. I mean, there is a bit of push and pull with it because some things aren't possible where, you know, some things are, but not going down that direct route that you're right, this is the only thing that's going to work. If you have somebody that comes from the outside looking in and says, “well, maybe if you approach it this way and it looks like this.” That's fantastic for me because, you know, sometimes you do get a bit sort of blinkered and blindfolded to things that you've missed.
And continually getting feedback from people that are actually going to use your software. Because at the end of the day, you can write a fantastic system that's brilliant and it does everything that you want it to do and it looks fantastic. But if the person using the code comes into it and within five minutes they're lost, that defeats the entire purpose of what you've done.
Josh’s advice
#7. If you could go back and change anything about your path to where you are today, what would that be?
Don't assume that getting into this industry is impossible to do or completely unattainable. Because it is attainable.
It's one of my biggest things for me. I see it all the time online where people say, “well, I don't think I'm good enough because I've not gone to Oxford, Cambridge, Harvard, etc.”
It is completely possible.
You know, there's a lot of people in our industry that never went to uni. They come from completely different backgrounds like myself. You don't have to be completely pigeonholed into this, ‘I'm going to work in motorsport from, you know, the day that you start school.’
You can chop and change. And if the chance comes up, you know, if there's a job advertisement for you that might be something that's related to you, go for it. If I hadn't taken that leap of faith way back in 2019, I wouldn't be sitting here today.
#8. If you could give one piece of advice to someone looking to follow in your footsteps what would that be?
Software-wise, looking into 3D graphics is always really beneficial. Looking at stuff for simulation as well, that's used so much across the board. So simulations. Games degrees are actually really beneficial for getting into motorsport because they see that as a kind of high end programming that you've done.
Make sure when you're in uni that you listen or at least learn about project planning because that is so critical. It's great that you can write a load of code, but if you can't structure how you're going to develop it and make sure that you've got a good testing plan…
That is a real key as well: make sure that you test everything before it works. The worst thing I had was Bahrain a couple of years ago for F3 / F2. It was a shiny new system. I'd done amazing things. I was really happy with it. But the minute that we set it out on the grid, the whole system just refused to work how I expected it to. It was so stressful getting that working to make sure that it was going to work for that race weekend. So make sure that you test it before it goes on the grid.
Josh’s career highlights and thoughts on the future
#9. What’s been your favorite moment from working software development for racing teams, whether it’s been something on track or something behind the scenes?
There are a few things that come to mind.
The first one was when I was first at Haas and we first had the tire pressure system that I was talking about. When that first ran, I was sitting in my living room at the time, cause this was during COVID. I was sitting in my living room at the time - I believe it was Budapest 2020 - and Kevin Magnussen had just gone out and I had the actual software on my laptop. Watching free practice and the numbers were coming through and they made sense and that was genuinely such a great moment for me. There was a tear in my eye, that's for sure. Cause it was like, this is the first thing that, you know, it works. I can see the car going around on the track and the pressures and the temperatures make sense.
I'd say the other one was probably my last year at Hitech. I’d been at Hitech for a number of years. Fantastic place. I love the guys over there. And it was the Macau Grand Prix. We had a bit of a panic because in the software that we were using we didn’t need to count more than four sectors maximum, whereas Macau has five. So it was very much a rush to say we need to get this work. There's five sectors here, what can you do? And I think it was within about half an hour that I'd managed to sort that out. And we ended up winning both races that weekend. So that really felt like I was properly part of the team there.
#10. What are you most excited about now that you’re part of a new team joining the F1 grid? What are you excited to see or work on or have manifest in this new opportunity that so few people get?
I think the biggest thing for me is that it's a blank slate. So a lot of the time when you start a software role, there's what the previous guy or girl did. And then you have to understand the system and understand what they've already got and then you get given the task.
There's never a chance where you are going to be in control of how this is all going to work from ground zero. And having that opportunity is fantastic for me. I love just being able to see the vision that I want rather than having to sort of work my way around different systems that are already in place. It's not like a criticism. It's just another quirk of software development.
But having that blank slate is genuinely so rewarding when we get to the end of this, because when the car gets on track, you can see- you can remember going back to when I first started at Cadillac and there was nothing in terms of my software.
Now, when we get the car on the grid, there's going to be a whole system in place. And I can look and say, “you know, I did that.” That's really what I'm looking forward to.
Want to learn more about other professionals across motorsport series? Then check out all of our Fast Lane interviews, or jump right into one of these: