C++ Inventor Talks Finance, Tech Employment

This article excerpt is from eFinancialCareers.

Bjarne Stroustrup is a New York-based managing director in the technology division of Morgan Stanley and an elected member of the U.S. National Academy of Engineering who teaches a computer science course at Columbia University. His main claim to fame is being the inventor—or the “original developer,” in his words—of the programming language C++ and author of The C++ Programming Language.

A native of Denmark who has lived in the U.S. for many years, Stroustrup is a member of the Electronic Design Hall of Fame and worked for many years as a research professor in computer science at Texas A&M University and, prior to that, Bell Labs.

So why did Stroustrup leave his prestigious position in academia to join a big bank? We spoke with him about his career path, how he’s working to make C++ even better and the impact that technology is having on the financial services industry.

Take me through your career path up to this point. Why did you leave academia?

After getting my Ph.D. in computer science [from the University of Cambridge], I started working at Bell Labs [formerly AT&T Bell Laboratories, currently Nokia Bell Labs] in New Jersey, which is unique—it was the best place in the world for practical computer science and industrial research. There was always a very close connection between our research and practical projects. My role there was not so different from my role here [at Morgan Stanley]—I completed approximately 10 projects per year while doing research, generating ideas and getting them into real-world use.

After 24 years it got a bit boring, though, so I went to academia at Texas A&M University, partly because they have a good super-computing group, teaching various kinds of students, doing research, applying for research grants, and more.

I moved to Morgan Stanley to get back to solving real problems. Academia can get a bit, well, academic and too far from real-world problems, and I wanted to get back to the northeast, because I have family here.

Can you explain what went into the creation of C++ and its significance to a layman?

The challenge at the time and today is that we want the computers to do a lot, and there are two things we need to deal with: the complexity of what we need to do and the performance of how we do it.

Even a cell phone carries many millions of lines of code within it. If your code is slow and uses a lot of resources, then the battery of your cell phone wears down in under 12 hours, so you have to improve the code.

If your code runs at half speed and you need two data centers instead of just one, then you just blew 60 million bucks plus the cost of running it.

You need your code to deal with efficiency and complexity.

To write large complex software, you have to abstract away from it. Mathematicians want to talk about matrices, IT guys want to talk about IP connections or addresses, finance people want to talk about financial instruments, loans, transactions and bank accounts. You need to be able to write the software in the terms you think about it, which is known as abstraction. That’s the other thing C++ is good at, abstraction, as well as performance. I work on improving code for our server farms, [technology] infrastructure and smartphones themselves.

What is your opinion of other programming languages that financial-services firms and others use?

There is so much strife in terms of which [programming] language is best at what. I don’t like language fanatics. I don’t think you can be a good professional if you only know one language. All the real big systems are built using more than one language, and if you want to be an IT [professional], then you better know a few. We use quite a few at Morgan Stanley, and a lot of them are the most common ones – I can think of about 10, but I wouldn’t want to leave any out, so I’ll decline to comment further.

Are concerns about technology’s impact on employment valid?

We should always be worried about employment, but we shouldn’t be hung up on employment in one particular task or industry. Technological unemployment is almost complete—200 years ago most of us were farmers, but everything changes over time.

The optimistic view is that automation and AI [artificial intelligence] destroy some kinds of jobs because they get taken over by machines but others open up. Some things we were doing in sweat-shop factories were not very fun, and now some people have gotten better jobs.

The question of whether we get more or less good jobs should be asked, but I don’t know the answer. I hope we get more appropriate outlets for people’s talents, but I’m not sure if anyone knows how to do it or predict what will happen as technology becomes more sophisticated. How many billions of people are looking for a job? [The impact of technology on employment] is a tremendously important question.

For more on the issues associated with e-finance, as well as Stroustrup’s work with ISO standards and teaching C++ at Columbia University, check out the eFinancialCareers article. It was originally written by Dan Butcher.