While Microsoft is known the world over for products like Windows, Office, SharePoint, the Zune, and the Xbox 360, it has also been entering new markets with their software products. The high-performance computing (HPC) market is one such area, and the automotive world is another.
In 2008, the Ford Motor Company released Ford Sync, an automotive technology product -- co-developed with Microsoft -- that allows drivers to connect their mobile phones and MP3 players to their car audio system. Sync also provides voice recognition, making it possible for drivers to use basic verbal commands to make phone calls and play music. We tested Ford Sync last year, and it worked as advertised: After configuring my mobile phone with the Sync system, I could call numbers saved on my phone, play CD tracks, and change radio station, all by speaking some basic commands, like "call home," or "play CD."
With an increasingly mobile workforce, systems like Ford Sync will undoubtedly become much more common. As an IT professional, your area of responsibility may soon overlap into company vehicles as well: What if your sales department need helps setting up their mobile phones to work with the system, or your CEO needs help picking a car to work with your company phone? It's a brave new world...and a mobile one at that.
Last year I had the opportunity to interview Walter Sullivan, the Lead Program Manager at Microsoft for the software powering Ford Sync. Sullivan works in the Microsoft Automotive Business Unit, and worked on the team that partnered with Ford to bring the Sync platform to fruition. (You can also read our interview with Gary Jablonski, manager of Telematics at Ford Motor Company, to get the automaker perspective on the development of Ford Sync.)
Jeff James: When did you guys first start talking to Ford about FordSync?
Walter Sullivan: We signed a contract with Ford in the early part of Spring ’06. There were several discussions leading up to that, obviously, but it was under 6 months. The progression is that Microsoft has developed the concept for this kind of device/gateway in the car, and we actually built an earlier version of this functionality with Fiat in Europe. It’s a part of what they called Blue & Me. It’s not as fully-capable as the Ford version is, but it’s the first generation. We wanted to continue developing the concept, and we talked to some auto makers, Ford included, and Ford had a vision that was very similarly aligned with ours, and after a few discussions we realized that we wanted to build this the next-generation of this device together for a North American market.
Jeff James: Did Ford approach Microsoft, or did you approach them?
Walter Sullivan: We are in fairly regular dialogue with almost all of the car makers, so this probably came out of a discussion in one of our regular meetings with different people at Ford. It would be hard to say who approached who, because I wasn’t personally in that discussion. I suspect it came out of one of the regular meetings we scheduled.
Jeff James: How long were each of the stages in the development process?
Walter Sullivan: In the automotive world, the project end-to-end was 14-15 months, which is actually fairly fast in a typical automotive development cycle. In the specific work we did with Ford, we didn’t spend a lot of time prototyping, because we already had an implementation with Fiat, and we were pretty sure what we wanted to enhance it with, so we went fairly quickly into the implementation with Ford. We spent a few weeks with them, probably on the order of 2 months or so, defining the specific enhancements we wanted to do, and the specific user interface that Ford wanted to expose to their users. We don’t really define a standard interface for Microsoft devices in cars at this point. The car makers are very interested in exposing a specific interface to their owners, so we spent some time really defining and specifying the user experience that they wanted, and we moved pretty quickly into the implementation phase of that device. We also did a pretty significant hardware revision, so that took 2-3 months to do the design and layout and get some prototype boards built, testing those boards, before we finalized the design.
Jeff James: In terms of specifications, what specific types of hardware are you running on? Also, can you give a technical background on what types of what version of Windows you are running, and what modifications you needed to get it to run at a FordSync level?
Walter Sullivan: The hardware is based on a single main processor which is a Freescale MX31L, which is an ARM-based processor, the same processor that’s in the Zunes, and it’s a good industrial-grade processor that actually has subsequently been qualified for automotive use. We have 256MB of flash storage, and 64MB of RAM, and then there’s the Bluetooth hardware which is on there, which is supplied by CSR, and finally a gateway into the vehicle network. It’s a vehicle CPU that does a firewall between the processor that’s connected to all the consumer devices in the vehicle network. That vehicle CPU is done by Continental, who is our tier-one hardware partner as well for building the device.
The software is based on Windows CE5, and we take Windows CE and build a bunch of different automotive-grade components on top of it, and we call that the Microsoft Auto Platform.
Jeff James: Probably one of the big challenges you faced with a solution like this is that, if you look at most of these vehicles, there are so many variables in the environment. From a hardware and software engineering perspective, how did you solve some of these real-world challenges that anyone would face with working on something like a vehicle?
Walter Sullivan: There are a number of unique aspects to the automotive environment. There are various power states, such as when you’re fully powered off and when you’re fully powered on. When the engine is running, you’re getting a pretty consistent voltage. There are a couple unique states, which is some of the work we did specifically on the automotive team, not built into CE. We have a suspend state, so that when you turn the key off in your car, we stay in a suspend mode for a period of time. We have some detection in the hardware that determines, either based on time or the health of the battery, whether or not for us to fully power off, so that we don’t drain your battery.
One of the other challenging modes is what’s called a cranking state, when you have your key in the start position and are trying to start the motor, the voltage can be somewhat inconsistent. We have specific power management that we implement for the automotive industry, that’s part of what we do on top of CE, that helps us to handle the various power states. For instance, in the cranking state, we’re careful about the power consumption we’re using, and we don’t turn on some functionality until it’s in a full-power state.
The knowledge that we’ve gained in learning how to deal with the different power management states is partially what we’ve done internally, and partially why Microsoft chose to build the device end-to-end for Fiat and Ford. We wanted to make sure in the platform that we were developing that we understood the hard problems that the tier-one suppliers had to solve, so that we could make sure to give them the tools we knew would solve the problem.
Jeff James: How many engineers, both hardware and software, were working on the project from both the Microsoft and Ford side?
Walter Sullivan: I don’t know fully the sizes of the teams for Continental or Ford. The engineering team on the Microsoft side was around 70 people for development, test, and program management.
Jeff James: I interviewed a member of the FordSync team on the Ford side, and one of the things that he said was that he was very impressed with how as soon as the contract was signed, there was an army of Microsoft engineers on the project. It was almost as if Microsoft parachuted in engineers after the ink dried.
Walter Sullivan: Doing the dedicated project for Ford was a conscious business strategy for us. It wasn’t a surprise that we signed the contract with Ford, and that we were wanting to do another project with an OEM directly as we had done with Fiat. We had a team in place and we were ready to dive right into the next project, so it might’ve seemed like we had guys parachute in and ready to go, but it was actually a very conscious business strategy that we were pursuing. We had the team in place and we really were ready to go, it was just a matter of getting the project in place to do so.
Jeff James: Whenever you have a big project that requires two big companies from two very different industries, there are going to be challenges. From a corporate culture and how teams function, what were some of the challenges you faced working across two companies that are in separate industries?
Walter Sullivan: It goes both ways. Ford has an established culture and Microsoft has an established culture. There were times when the challenge was figuring out how to merge the ideas of both of our companies. I will say, though, that working with Ford was quite a seamless integration for us. They were really responsive, very willing to consider that Microsoft was an expert in the software side of this business, and they let us determine a lot of what needed to be done from the software side. That is, from what I understand, atypical in the industry, where the carmakers are often the ones controlling every aspect of a project. We had a very good working relationship with Ford—there was a lot of respect on both sides. When there were issues that required a deep manufacturing understanding on these devices, or repair and warranty scenarios that needed to be considered, those were areas where we deferred to Ford’s expertise. When it was a software issue, they were good at deferring and thinking of us as experts. It became a very complementary situation.
Obviously, with any project there are always specific disagreements that the companies have, and luckily we had determined upfront how we were going to resolve these disagreements, what the escalation process would be, and who the final decision makers would be. Because we set up a lot of the procedural things like that up front, I think it really made the project move along a lot smoother during the execution phase. It’s one of the things that allowed us to accelerate what would normally be a 2-3 year development cycle into less than a year and a half.
Jeff James: Ford has really been through a tough period over the last couple years. With the changes Ford is making, did you see evidence that there really was an effort to do something new, and did you really get that sense of urgency that they wanted to make changes? Did you feel like FordSync was a good example of the future direction they wanted to take the company, that this project was almost like a microcosm of where Ford wants to be in the future?
Walter Sullivan: I hope so. The guys we worked with were very talented and very passionate about what they were doing. We saw a very small fraction of the workforce that Ford has, but I certainly hope that these guys represented the rest of the company on what changes are happening within the company and how the organization is adapting and really looking to move forward. I’ve seen a lot of the stuff that they have planned as a company down the pipe, and I’m excited for what they have coming in the future. I’m sure GM and Chrysler have similar plans in place, but obviously with Ford we had a bit more insight into that. I do think that they are interested in distinguishing their vehicles using technology, and obviously Microsoft always likes to hear of technology being used as a distinguishing factor in product development and design. To the extent that that is a strategy of theirs, I think they’re on a very good path. I can’t really speak for Ford and say that that is the path they are pursuing, but I know from the team that we worked with that they are very passionate and very interested in innovating and distinguishing themselves on a technology side.
Jeff James: Looking at the Ford Sync project as a whole, what was the most challenging thing?
Walter Sullivan: One of the significant challenges that we faced in this project, and in the Fiat project, was the time pressure of trying to get it done and get it done right. In different development teams at Microsoft, we’re very passionate about delivering a product that meets the needs of the customers that we want to use the product, and we spent a lot of time discussing what exactly that is within different product groups. We look at the project at a macro scale, and there are a few different variables you can tune to determine when you get the product out the door. One of them is the schedule you deliver the product on, one is the feature set, and one is the amount of resources you have. In the automotive projects we’ve worked on so far, the schedule piece has no longer been a variable. You’re meeting some fairly stringent qualification requirements, and ultimately a production line that is going to begin on a specific day, whether or not you’re ready.
So the time aspect of that triangle quickly becomes fixed, and you’re left with the other two variables that you have to really deliver the product successfully. One of the challenges for us and one of the things that Microsoft really brought to the project was the discipline on the feature content of the device. The challenge is not getting too aggressive with adapting and incrementally adding functionality over time as you develop the project. We call it feature creep, and it’s something that happens in every project more or less. But, we were able to really force the discipline on the project that allowed us to concentrate on what the core scenarios were, what the important usages of this product were for the customers we were targeting, and we were able to really keep the project focused on that.
Walter Sullivan: It was not only a challenge on fighting our own desires for specific enhancements that may or may not be good—but are interesting from a technology standpoint—but also Ford had its own interests once it learned what the capabilities of the device were, immediately expanding it into the different scenarios it could be used in. Especially among technology-minded people, it’s a natural temptation to start looking at new problems that you can solve with the technology. But, in order to deliver the product at a very high quality—which was obviously a very key aspect of it—and to deliver it on the schedule that we needed to in order to meet the production line, we had to exercise discipline. Realistically, the resource aspect is not too variable, because our product development teams are fairly well defined, and you don’t have the ability to bring on 25 guys for 3 months to get you through a crunch period. So, it was really an opportunity for us to focus on the content and the important scenarios and kind of keep everything grounded in the reality that we began the project on.
But I think that was the toughest thing for all of us, and this sometimes made Microsoft not the most fun partner to work with. However, it’s also the primary reason we delivered the project on time, on schedule, with the quality we expected to. We had both Ford and Fiat comment, at the end, that they appreciated that that was the role Microsoft played in the project, and gave us a lot of credit for the fact that that was what allowed us to deliver the product as successfully as we did.
Jeff James: What was the most surprising thing that you learned about Ford with the project? Was there anything unique that you found out about them?
Walter Sullivan: Until I had been through this process with them, probably like a lot of people, American cars were not high on my purchase list. Having gone through this process with them, and several other car makers, I can honestly say that the passion and the quality of the engineering put into these vehicles is on par with pretty much every other car maker I’ve worked with. Plus, Ford is innovating on the technology side. In fact , a colleague of mine and I were talking about today—if one of us were to purchase a car now, there are a number of Fords right now that we would consider purchasing, and 3-4 years ago I wouldn’t have said that.
Every time I work with a car maker, I do walk away with an appreciation for how complex an engineering task it is. Building one of these vehicles, getting all of the different parts designed and integrated and put together in a vehicle that delivers a good driving experience is quite a complex task. But with Ford in particular, I can tell you for certain that the practices, passion, and talent of the engineers at that company are on par with anyone else I’ve worked with. We’ve worked with high-end car makers and other foreign mass-production car makers with a reputation for very high quality, and what I see at Ford is easily on par with those guys. And I think their design is improving—the cars I see from Ford today are ones that I’d really consider buying.
Jeff James: So is anyone on your team currently driving a Ford vehicle with Sync equipped?
Walter Sullivan: We do have several Sync vehicles here that we test, and there is someone that has a Lincoln MKX that has Sync in it.
Jeff James: So the Ford Focus that Bill Gates was driving in his farewell video (shown below), was that his Focus or was that loaned to him for the occasion?
Walter Sullivan: That is one of the vehicles that our marketing team owns and uses for tradeshows and press demos, and things like that. That was a hilarious video. Actually, I had heard about the video, but hadn’t seen it before the CES launch, and I didn’t realize he was driving the Focus. That was pretty cool.
Jeff James: If there is one thing that you could point to that you were most proud of regarding the development, about either the process or the product, what would it be?
Walter Sullivan: As far as the process itself goes, in the software industry it is quite an accomplishment to pick a date 15 or 16 months ahead on the schedule, and deliver exactly what you said you would on that date, without having to adjust it. That is a pretty huge achievement in the software industry, especially because we didn’t cut features or compromise the quality to hit that date. It was because of the discipline that we’ve developed on our team for the planning, scheduling and executing that allowed us to do that. One of the things I’ll take away if I ever move from the automotive team to another team at Microsoft would be the insight that we’ve learned in how to execute so reliably on a significant scale software project. That’s something I’ll certainly take with me anywhere I go in my career.
Jeff James: This is probably an urban legend, but did any discussion emerge from the thing a couple years ago when Bill Gates reportedly said that if the auto industry developed as quickly as the software industry did, every car would be getting 1,000 miles to the gallon? Were there any jokes about that?
Walter Sullivan: There were plenty of jokes—you’ve probably seen the Internet jokes about “what would your car be if Microsoft sold cars?” There were lots of friendly jokes, even within the automotive team amongst ourselves, and with Ford we had a lot of fun playing on some of those Internet jokes that go around. There was nothing I recall about the pace of the automotive industry vs. the computer industry.
Jeff James: Any insider tips from Microsoft on the best way to use Sync or personal ways you’ve found to maximize the use of Sync?
Walter Sullivan: There’s two things I found when I took one of the cars home. We actually have about 6-8 test cars that we use for test purposes and to let people experience the product we’re building. I bring my 8GB Zune into the car, plug it in and just leave it there. It’s so cool to have whatever music I want available to me. I don’t have to remember to bring it to the car or bring a box of CDs. The other tip that I like is, once you become familiar with the system, and you know the voice command that you want to give, you can press the push to talk switch twice instead of just once and it goes straight to the listening mode. We call this the double pump. Once you press it twice, you can speak the command immediately instead of waiting for the prompt to finish. For someone that’s an expert user and knows the command they want to give, it’s a bit of a shortcut that gives them faster access to the voice command. I use that all the time when I’m in the car.
Jeff James: Thank you so much for your time.
Walter Sullivan: Have a good night.