What is it like to work as a developer at WirelessCar?

September 25th, 2020

Connected cars have been around for many years. However, we have only just begun to see this technology being implemented on a larger scale. As connected cars become more common, better and more differentiated services will be needed in order to meet customers’ demands. At WirelessCar, we get to create and develop these services for the world’s car manufacturers. As one of the company’s architects and developers, I would like to tell you more about what working as a system developer or application engineer at WirelessCar is like.

What programming languages can developers expect to work with at WirelessCar?

While Java certainly gets a lot of backend work done, we tend to adapt and alternate, depending on the configuration. Personally, I like to mix it up with Python in some cases. We use Node.js in certain contexts, and have at least one team working primarily in C#. On the frontend side, TypeScript is often used for new development, but we work with JavaScript as well.

What about the developer’s freedom to choose which programming languages he or she gets to work with? Here I would say that the most important thing is that you are a good team player. If I were, say, a Kotlin expert, I would still have to be mindful of colleagues who do not have that same expertise; thus not drop a bunch of Kotlin work in their laps before going on vacation, for example.

If you believe that a certain language will be beneficial to us, why not start out by introducing it in a small-scale solution. A test bot, perhaps, or a non-production system. If it does not work, no damage has been done, plus you probably learned something in the process. Now, if it turns out to be useful, we can develop and enhance your solution once it has proven to be powerful, reliable, and easy to maintain.

Building connected car services for a wide variety of users

At WirelessCar, we build a large chunk of the digital infrastructure between the car and the user. These backend cloud services, that the car communicates with, make up our core business. We also do frontend and mobile app work, and make sure that these solutions speak with our backend cloud services in a smooth and stable way.

Individual drivers or car owners are not the only users we need to think about when we develop our services. Car dealers, connected fleet managers and call center operators are but some of the many user groups that make up the cycle of connected car services. Developing services that work end-to-end requires coordination; between us and the car makers, us and the partners we integrate with, and between our backend and frontend teams.

One challenge you will encounter as a developer at WirelessCar is that of scale. Developing and implementing services that work for a few cars, or even a million, is one thing. As the scale grows to include tens or hundreds of millions of cars, there will be more factors to take into account and a great deal of complexity to wrap your head around. For example, a car sending messages to us a few times a day is nothing. Hundreds of millions of cars, on the other hand, means tens of thousands of messages per second, at peak time.

Using reliable cloud services that work over time

WirelessCar uses cloud services to provide efficient solutions for our customers. As these solutions need to be available and useful for years, we must work with suitable and reliable tools, and avoid technological fads.

We currently do most of our work in Amazon Web Services (AWS). However, we use Microsoft Azure more and more, and expect the list of cloud services we use to keep growing.

Starting your job as a WirelessCar developer

While certain routines and work methods differ between our teams, our open and agile work process defines who we are as a company, and how we work. Most of our teams tend to work in two-week sprints. After every six or seven sprints, there will be cross-company coordination to check that the various teams do not have conflicting plans or priorities.

When you start working at WirelessCar, you choose which operating system you want to use on your laptop: Linux, macOS or Windows. Some may see this as a minor detail, but personally, I am glad that we get to choose for ourselves.

It is essential that you comply with our security practices; other than that, there are not many strict rules to abide by. I think that the workplace atmosphere at WirelessCar is characterized by activity, curiosity, and an eagerness to improve and grow. Ours is an industry where there is a lot going on all the time, so it is important to be alert and think ahead.

Lastly, a confession: I am more interested in development than cars. Even so, cars happen to provide very good reasons for developing new services that solve problems. Solving those problems in an elegant and efficient way can be very satisfying, a bit like completing a complex puzzle. Fortunately, I get to work on these connected car services and problem-solving solutions every day.

I hope you now have a clearer picture of what it is like to work as a developer at WirelessCar. If you have any questions, just drop me an email. Make sure to check out the video above, and those of my colleagues, as well!