Welcome to Developer Month 2019. Between April 8th and May 8th 2019, we will feature a variety of developers, publishers, community personalities and more who will tell us their story. From written interviews and blog posts to video interviews and more, we have curated a range of interesting content to maybe even inspire you to be one of these developers in future years. Please enjoy Developer Month 2019 as much as we enjoyed putting it together for you.
We couldn’t have put together Developer Month without the support of all the developers & publishers involved. Also, huge thanks to Thrustmaster for their assistance in sponsoring Developer Month.
April 20th: Lockheed Martin Prepar3D
Adam Breed, Engineering Project Manager at Lockheed Martin, is one of the most important people in our community in helping to bring our simming experience to the next level. He and the team at Prepar3D work tirelessly to bring new features and improved performance to our simulators. In today’s Developer Month feature, we speak about how he got into the role he is in today, what him and the team do to celebrate after a release and how a new developer can get involved.
Tell us a little bit of background on yourself. Briefly what you do and maybe a little bit about the journey you took to get into the position you are in today.
I am the Engineering Project Manager of Prepar3D®, Lockheed Martin’s flagship commercial flight simulator platform. In addition, I am responsible for leading multiple defense industry focused training and simulation efforts for the Training and Logistics Solutions (TLS) line of business within the Rotary and Mission Systems (RMS) business area, operating out of Orlando, Florida. I’d say my journey got started when I was around four years old and got exposed to video games through the Nintendo Entertainment System (NES). From that early age on I was interested in the technology behind video games and how to create them. That led me to be interested in programming and then eventually pursue a Computer Science degree at the University of Central Florida.
While working towards my degree I was part of a small technology startup. Experiences gained while forming a new business helped me grow as a technical leader and become energized about creating and selling technology. Even at a young age I was always interested in simulation. I always thought of simulation being video games with a purpose, and Lockheed Martin is a world leader in simulation. So, after finishing my degree I joined Lockheed Martin as a software engineer and first started developing ground simulations.
A few years passed by, and I was made aware that Lockheed Martin was buying Microsoft® ESP/FSX and using it for simulation and training. I jumped at the chance to be a part of that program and joined the brand new Prepar3D team. The rest is history.
Was this always the role/industry you expected to land in?
Absolutely. It was a dream of mine to land where I am. I vividly remember playing the Flight Simulator as a kid – thinking how awesome it would be to take it another step further. Also, while I enjoyed video games, I was far more interested in creating something that was more than entertainment. My family has a long military history, specifically the United States Air Force, so it is an area of pride that I am working to support their efforts in some shape. It is very exciting to be a part of something that we see transformative to the training industry. Simulation and training are key ways to safely and affordably save lives, so it is something I really love.
How would you describe a typical day for you (if that even exists)?
I definitely have a mix of typical days and days that are full of surprises. Typical days are common when the team is deep in development. Those days mostly are made up of ensuring we have a sold plan and are on track with the next development item. We follow an agile process where the team is cross-functional, and we are doing continual builds and iterating on changes. We have daily standups across the development team and I check in with specific product teams throughout the day.
While I still love programming, I have the best team in the industry and they do the heavy lifting when it comes to writing code. I sometimes get back into the code if there is something I can help with, but at this point I focus on other ways to help Prepar3D be successful.
The untypical days I have typically revolve around travel. I have been able to see a lot of the world and I have worked with some amazing people. You definitely see how widely Prepar3D is used around the world and how much our customers love it.
As a project manager for an important project within the flight simulation industry, how do you determine roadmaps and features for each release (whether major or incremental)?
Planning and roadmap development at a high-level is fairly straight forward. The purpose of simulation is to make the synthetic/virtual world indistinguishable from the real world. So, the most obvious way to make that happen is almost always better performance and improved realism. That leads to ensuring your roadmap contains updates that leverage the newest rendering capabilities to fully utilize modern hardware and to create visually realistic scenes.
At the feature level, it is a multi-phased approach that often starts with our third-party developers. As our third-party developer create content and add-ons for Prepar3D, they are often using Prepar3D as much as we do! If they need new interfaces or capabilities to make their simulation and training content, so in turn our customers have a better Prepar3D experience and an ecosystem of content to choose from, that is something we prioritize.
We also log every single feature request posted on our forums. We listen to our users and make fixes and add new capabilities that are requested by our users daily. I am sure many of your readers have seen their requests addressed in our What’s New changelogs throughout the years.
Finally, we work with subject matter experts inside and outside Lockheed Martin to help shape each release and ensure we have a top-tier simulation platform that is ready for training today and in the future.
What can you tell us about the team you work with?
It is a fairly mixed group of people, but they all have extremely strong technical backgrounds and are passionate about what we do. While we are growing the team at a rapid pace, the team still has people from FSX/ESP and a good portion of the team has been around since Prepar3D v1. Overall, the team across Lockheed Martin that is involved in creating Prepar3D consists of a cross-functional mix of software engineers, human performance engineers, pilots, artists, and geospatial engineers – of all ages and backgrounds.
What are some of the biggest challenges that you face in your role? How do you overcome them?
Even in my position today, I want to be involved in every aspect of the product, but at some point, that becomes difficult. So, the one challenge that comes to mind is trying to be in two places at the same time! The only way to overcome that is to ensure you successfully delegate. It is really a great problem to have – we are just working on so many exciting things, you really want to be involved with it all.
Thinking back to your early development days, I’m sure you look back and think “I could’ve done this differently”. What advice would you give yourself back then from what you’ve learned now?
Focus on the team around you. While you can do a lot on your own, you can do so much more with a strong team. Working as a group multiplies whatever each of you could accomplish individually.
The release of Prepar3D V4.5 almost came out of nowhere. How do you and the team react when you see people excited about the updates after months of hardwork?
It is always a great feeling getting a new release out. We are always happy to release a changelog of hundreds of items that users have been requesting. The team always loves reading the feedback and using it to focus us on what we tackle next.
Do you and the team celebrate after a release? And how do you keep them motivated to push on through some of the challenges you may have mentioned before?
With so much time and effort dedicated to these releases, team acknowledgement is extremely important. After releases, we often celebrate the success as a team. Regarding motivation, I’d say our team is primarily self-motiving; the developers take pride in their work and want to ensure we keep up the reputation of Prepar3D. Additionally, a lot of the motivation happens by making the aware of the importance of what we are doing and how our users rely on Prepar3D to ensure people are properly and safely trained. It is not something I take lightly.
Prepar3D are going to be speaking at this year’s FlightSimExpo in Orlando. Firstly, it must be pretty nice that it’s on home turf. Secondly, what are you hoping to achieve by attending and speaking at the event?
FlightSimExpo in Las Vegas last year was a great event, so I am very much looking forward to it this year in Orlando. Yes, our Commercial Core lead, Rob McCarthy, will be giving a short presentation on using Prepar3D for advanced training and simulation during the Captains’ Corner day. We will also be doing a Meet & Greet that Saturday with some of the local development team coming out to say hi and give Prepar3D swag away. What we are looking to achieve is pretty simple – we want to thank our users and developers and listen to what they have to say about Prepar3D.
Part of why we wanted to do Developer Month was to try and help inspire others to get involved in the development community. What advice would you give to someone either looking to start developing for Prepar3D or possibly even working on the simulator in the future?
We try to make developing with Prepar3D easy as possible. We make our development licenses affordable and have a fully open Software Development Kit (SDK). So, step one is purchasing a Developers License from our online Store and then step two is downloading the SDK.
From there, start exploring the samples we include in the SDK and then reading the SDK portion of our Learning Center. Most people start with SimConnect, because it is a fairly straight forward method to start manipulating Prepar3D. I’d also encourage new developers to look at the Prepar3D Development Kit (PDK) as it gives much deeper control and facilitates things like SimObjects, which gives developers the ability to create simulation objects from the bottom up. New developers should review the PDK Samples for examples on the power the PDK gives to developers.
I have to ask… Prepar3D V5? Any clues, hints or tips about what is to come?
The team continues working hard and we can’t wait to share details on what’s next – but no clues, hints, or tips yet!
Thank you once again to Adam from Lockheed Martin for taking the time to answer our questions. You can find out more about Prepar3D on the website.Developer Month 2019 Hub
Stay tuned as Developer Month continues tomorrow with a brief recap of this week.