3 min read

Why Developers Should Keep on Learning

Spotlight: David Tong, Senior Developer

 

Openness, flexibility, and the constant drive to learn. These qualities define David Tong, who supports our team and our clients to ensure that the Crux platform performs as it should. A skillful problem solver who has been programming since the 1970’s, David is as humble about the knowledge he has gained over his 30+ years of experience as he is eager to solve the challenges of the future. He told us why even expert developers should keep on learning.


What made you want to join Crux?

The fact that everything they were doing was new. The whole ethos of Crux is that everything is open. If there’s new technology out there, we’re interested. When I was at [my previous employer], we were using their old, proprietary tools left and right. Here, we just bring on the best.

We’ve used Amazon Web Services. We’ve used Google Web Services. We’ve used all manner of open source tools. At Crux, our attitude isn’t, “You can’t do that because it wasn’t developed here.” Our attitude is, “Let’s do this the right way.”

Crux is a service, rather than a technology that companies have to adhere to. So they can still do their work their way. We don’t impose our procedures upon them. We make data available to them and let them do things their way.

 

You have 30+ years of experience as a software developer. What advice would you give to somebody about how to work in a field that is constantly changing and evolving?

Be flexible. Willingness to learn is a prerequisite. The things that you thought you knew, you won’t even recognize five years from now. Ten years ago, there was no Google Cloud. The network was the computer. There was this whole ethos that the network was important. We hadn’t yet reached the stage we’re in now where there is total virtualization. New technologies come and go, and old ones die. So the more flexible you can be, the better.

There’s the Dunning-Kruger syndrome, whereby the more you learn, the less you realize you actually know. We’re all guilty of this at various times–you learn a little bit about something and think you’re an expert. The more you learn, the more you realize there’s so much more to learn. It doesn’t matter whether it’s software, cooking, photography, or art. Whatever it is, the experts are the ones who have a greater understanding of what they don’t know.

 

You are a tremendous problems solver who can fix anything, with or without a manual. What can somebody do if they are trying to solve a tough problem and they feel stuck?

Take a break. You can head off at a tangent and fixate on a wrong solution. There’s also the phrase “yak shaving,” which refers to a progression of tasks where you solve one problem, only to hit another. Phrases like that describe what can happen to you when you’re debugging a problem. Time and time again, you’ll take a particular tactic and think you’re solving the problem, but sometimes the right thing to do is to just stop working on it, make a cup of tea, go for a walk, then come back and start again. Moving away and coming back and looking at the problem a different way can make all the difference.

Other times, you’re really onto something, and you just need to focus–chase things down, down a particular pathway. In those situations, you need an environment where you can work undisturbed. That’s why some engineers will happily work until three in the morning–and not even realize they’re doing it–when they’re focused on an intractable problem. But knowing when to continue down a path, and when to stop and take a break and try again, that’s the key.

 

Having seen this field evolve, the beginnings of the cloud, and platforms and services change, what is your opinion on where the field is headed in the next five years?

There’s going to be more machine learning and artificial intelligence. It won’t be how people think it’s going to be–I don’t think we’ll ever get SkyNet [the self-aware AI system from the Terminator movies]. The systems are probably going to be more rules-based. People will find ways to automate data mining and decision making. Exactly how it’s going to be? I don’t know. All I know is, it’s going to surprise me.


David has been programming since before several of his colleagues were born. A graduate of Durham University, he has worked at the UK’s National Computing Centre, Sun Microsystems, and Oracle. In his spare time, he is a semi-professional photographer, occasional wine writer, self-taught gourmet chef, and father of two. His hair and accent are real.

 

What Cloud Marketplaces Do and Don’t Do

What Cloud Marketplaces Do and Don’t Do

Not long ago, we observed here in our blog that the critical insights that drive business value come from data that is both (1) fast and (2) reliable.

Read More
The 3 Dimensions of AI Data Preparedness

The 3 Dimensions of AI Data Preparedness

This past year has been exciting, representing the dawning of a new age for artificial intelligence (AI) and machine learning (ML)—with large...

Read More
How Do Small Hedge Funds Solve the Big Problem of External-Data Integration?

How Do Small Hedge Funds Solve the Big Problem of External-Data Integration?

How do you get white-glove customer service from a major data supplier?

Read More