Back
Tariq Shaukat
President, Bumble Inc.

Tech Connects Episode 32: Tariq Shaukat, co-CEO of Sonar, on a future of cleaner code

🎥 Nov 07, 2023 📺 Dice ⏱ 19m 👁 413 views
Our next 'Tech Connects' guest is Tariq Shaukat, who’s co-CEO of Sonar, a company devoted to enabling developers and other tech professionals to write cleaner code. Previously, he was president of Bumble, and before that, he was President of Google Cloud, where he was responsible for product, engineering, and much more. I wanted to talk to Tariq because the software industry is at an inflection point. The rise of low- and no-code tools, along with code-writing chatbots like ChatGPT, could fundamentally alter software engineers and developers’ workflows, and even enable people without much co...
Watch on YouTube
Transcript (21 segments)
N
Nick Kolakowski0:05
Hello and welcome to Tech Connects DICE's podcast where we dig into topics on tech hiring, recruiting, and careers that matter to you. I'm your host Nick Kolakowski, and I'm going to talk to great guests every month about the current state of the tech careers world, including the tech job market, hottest tech skills, what companies are doing to attract and retain technology professionals in a historically tight market, and much more. Our next guest is Tariq Shaukat, who's co-CEO of Sonar, a company devoted to enabling developers and other tech professionals to write cleaner code. Previously he was president of Bumble, and before that he was president of Google Cloud, where he was responsible for product engineering and much more. I wanted to talk to Tariq because the software industry is at an inflection point. The rise of low and no-code tools along with code-writing chatbots like ChatGPT could fundamentally alter software engineers' and developers' workflows and even enable people without much coding experience to produce acceptable software. With its tools providing analysis and coding guidance, Sonar could help developers navigate this interesting new environment. So let's listen.
Tariq, thank you for being on. As the co-CEO of Sonar, I wanted to talk to you just because I'm so fascinated by the concept of clean code, which Sonar obviously is attempting to bring to the masses. I wanted to dig into it just because I'm curious about coding—it's both an art and a science—and clean code is something everybody in tech obviously aspires to. But I'm just wondering, because you were the former president of Google Cloud and you've spent your entire career immersed in code, when you say clean code, what does clean code mean, and how is Sonar trying to push the gospel of clean code out there to everybody?
T
Tariq Shaukat1:59
It's a great question, and thanks Nick again for having me on as well. It's really exciting to be here. So when we talk about clean code, we really are trying to describe code that is reliable, that is secure, that is maintainable—code the way it should be written. That is in part on each individual developer and how do you check your work, if you will—how do you really make sure that you're developing the right way. But it's also for the team, and it's also for the company to say how are we actually building things in a way that is going to kind of live over time, right, and you're going to be happy with over time.
N
Nick Kolakowski2:48
Whenever I'm speaking to developers, the thing that always comes up is that a great coder, as you well know, it's not necessarily how many lines of code you write or how many commits you make or like the sheer volume of code you're pouring out there, but it could be taking code away. There's a whole elegance to it to a certain extent. And I'm wondering, when we talk about clean code, when we talk about the nuances that you were just referring to in code, how does a platform like Sonar sort of analyze the art of it, which is really kind of a little bit more of a nebulous thing, but how does it determine that when somebody takes code away or that they're doing something that's maybe a little bit more abstract or a little bit more higher level than just kind of your basic nuts and bolts, that what they're doing is sort of optimized, if I'm articulating it correctly.
T
Tariq Shaukat3:38
No, and it's a great question. And I think it's important for me to emphasize that what we are really doing—we are not an AI assistant doing coding for you and trying to cut the human out of the process in any way, shape, or form. What we do is we look at lines of code as you are writing them and after you've written them, but actually it works best when you're writing them. Essentially, we look at those lines of code and we prompt the developers to think about this, this, or this. And so a lot of times that is, hey, did you know you've already defined this variable here and now you're defining it here, and maybe that's just overly complex. Or did you know that you've introduced this dependency that you probably didn't need to introduce. Things like that really become core to the recommendations. And fundamentally it's then up to the developer—we do not do any editing for you, we are not doing autocorrect. If you think of this as writing prose in Google Docs or something like that, we're not autocorrecting, we're not anything like that. What we are doing is basically highlighting for you things that you should consider. And so for us, it is helping an amazing developer continue to be amazing and focus on the things that they want to focus on, and giving them hints and tips and suggestions that they can consider. And it's helping even people who are just starting out to learn as they're coding, right, to say oh my gosh, I didn't really think that that is what I was doing. So helpful, let me go ahead and correct that now. And again, part of the point here is catch it while you're coding as opposed to a couple days later you're realizing you built it, or a couple years later somebody realizes you built this and they can't understand your code anymore. So it's all of those pieces, but it's fundamentally a tool, it's a platform, it's a series of platforms that are meant to assist developers, assist whoever is writing the code.
N
Nick Kolakowski5:50
It makes me think of—I mean, anybody who's gone through a code base knows this, where you're sort of desperately hoping that whoever did the code two or three years ago has left like enough comments so that you can figure out like whatever bizarro logic they used to get from point A to point B. It sounds like that would help with this in terms of that whole issue.
T
Tariq Shaukat6:06
Yeah, and even in ways that people don't really think about every day. I've had code bases I've inherited where the commenting, for bizarre historical reasons, was done in a language that nobody else in the company speaks at the moment. We had a couple of Czech developers at one point who were doing all of their commenting in Czech, and nobody in the company read Czech. So you really want to build code that is understandable, right, and that yes, you always want to document your code—that's a best practice—but you want to make it so that the code itself is as straightforward and as lean as possible so that you can really look at it and start to understand what is happening in there.
N
Nick Kolakowski6:54
Yeah, no, that makes total sense. I was talking to somebody the other day about Meta—they have that Code Llama, Code Llama 2—I'm not sure, I mean it seems like they're doing multiple things at once in terms of their LLMs, but you know, obviously that writes and debugs code. And then you have ChatGPT and Bard and everybody's sort of coming online with these code generators. And I've been having lots of debates with people about how that's going to kind of impact software development and software engineering and so on. The tools are getting more sophisticated it seems like on the size of the LLM and the case of Llama and so on. But I mean, since you're right in the heart of this with clean code and so on, and you're watching all of these generative AI systems building out this code—do you think that a lot of software—I don't want to make this too negative, but do you think that a lot of software developers are kind of headed for disaster using these tools and it's going to produce tons of really just awful code? Do you think it's going to get more sophisticated as it goes on? I mean, how are you seeing the whole industry basically evolving over the next however long?
T
Tariq Shaukat8:06
Yeah, you know, I think there's plenty of people in the past who've predicted that the tech is never going to work and they've all been proven wrong. So I'm a tech optimist on most fronts. I think there's a question of how quickly, right, but there's also a question of what posture do you as a dev team, do you as a company want to take. And I think in general the trust-but-verify approach is right. So if you've decided that there's a certain amount of your code that you're going to write using Copilot or using one of these other generative AI tools out there, if that works for you and it works for your dev teams, then we've got really no objection to that. What we basically say though is everything you're building is an asset for the company. It could be introducing reliability issues, it could be introducing security issues, and what you need to do is make sure that that code is clean. And maybe there's some GPT-X in the future that just 100% produces completely secure, completely reliable code that you don't have to question, but I don't really see that happening anytime in the near future. I think that people are always going to question, they're always going to want to make sure that there's no hallucinations happening that are coming into the code.
One thing that some developers have done using SonarQube, what one of our core products is, build in some rules themselves that check for inclusive language as an example. And this is the type of thing—we've seen all sorts of bad experiments happen with AI where all of a sudden they become racist or they become Nazis or whatever horrible, horrible things. And as a company and as a developer who takes pride in what they're doing, you really want to make sure that if you are outsourcing let's say 10% to an AI assistant or you're getting help on some of your code, that it's actually producing code that you can be proud of. And the pride is that it is inclusive, that it is actually meeting your quality bars, and that it is reliable and it is secure. So we really actually encourage all of the innovation that's happening. It is making developers that I talk to for the most part happier and more productive, because I think a lot of what these tools are doing is taking out a lot of the more mundane work. And to your point earlier, this is an art and a science. It's an art and a science and sometimes it's a slog—it's just work. And if you can kind of get rid of some of the parts that are less enjoyable and focus on the harder parts, that's great. And we think that doing that with this sort of notion of clean code in mind is really the way to go.
N
Nick Kolakowski10:53
It also seems, in terms of all that, that data privacy and security are other issues. Like for example, I think it was Google that was telling internal googlers not to rely on ChatGPT just because of the fear of sort of what it would potentially pull into its model. And I think the Amazon investment they announced this week—I'm blanking on the name of the company—Anthropic, yes, Anthropic. But one of the points I was talking to somebody about, and they were saying that one of the points of being able to roll your own LLM using that tool was to allow people to train it on a secure dataset—it wasn't feeding off or potentially pulling in things that shouldn't have been pulled in. It seems like in terms of the code, you would also want to have a tool that would scan and sort of optimize data privacy and data security as well, because it seems like that's an emerging issue with all this.
T
Tariq Shaukat11:45
There's certainly concerns about this, but I would liken this to what people were saying about cloud back in 2016 when I joined Google Cloud. In those days, oh, you know, there's no bank that would ever use a multi-tenant cloud solution because it just wouldn't possibly be as secure as what they could do in their own data centers, or no one's going to possibly have the scale or sophistication, or you need to customize and things like that. And what happened was that all of the cloud providers—including Google Cloud where I was, but Azure, AWS, etc.—all basically emphasized becoming enterprise-ready. And I think the fact of the matter with all of these coding tools and with generative AI in general is there's a huge demand for enterprise-ready generative AI tools, whether that's for coding, for other purposes. There's more and more companies—I know Google as an example is taking this super seriously, I'm sure OpenAI is, I'm sure Microsoft, Amazon, everyone else is—that they want to make sure that there's the provenance of the training dataset, that you're not scraping a whole bunch of books you don't have rights to and using that to train. So I do think that the industry is likely to solve this moving forward. And again, I think if you are a company that is trying to use these tools, you'd sort of look for what are the enterprise features. And then frankly, what Microsoft did I thought was super helpful with the indemnification they're providing around their generative AI tools—just making it safer and easier for companies to adopt.
N
Nick Kolakowski13:26
Yeah, no, that makes total sense. And then what—I mean, I know you can't talk about the roadmap too much—but how are you looking at—I mean, we've been talking about the proliferation of these tools, the proliferation of code, the proliferation of generative AI and so on. As you're moving forward with Sonar, how does it fit into this market? I mean, where are you sort of seeing the pain points in terms of people writing code? Again, I know roadmap's a highly proprietary thing you can't reveal too much, I'm just curious though like how you see the market sort of playing out with regard to what you're doing.
T
Tariq Shaukat14:01
You know, I think we really feel like the market is evolving in a way that's perfectly suited for what we do. And I'll tell you a couple of reasons why. One of them is developers over the last—this isn't a new phenomenon—over the last 10 years have really developed a lot more influence and power in how they sort of are able to develop. So the first piece is developer-centric tools are critical. And again, we have 7 million developers who use our platforms today. We have started with a developer, we live and breathe with a developer, our tools are mostly open-source tools that companies can pay to get access to some of the more enterprise features. But fundamentally it is an open-source tool that is built developer-first. So that's point one, and I think that very much plays to where the market is going.
The second—and Marc Andreessen said this back I think in 2010 or something—software is eating the world, but it's continuing to eat the world and AI is now along for the meal. And more and more companies are becoming software companies. I remember a CEO of an auto company telling me a couple years ago that they could build, in his opinion, a car that is better than Tesla, but they could never build software that is better than Tesla's. And that's becoming a real competitive issue for auto companies, it's becoming a real issue for banks, it's becoming a real issue for retailers—every company is realizing it's not just that software is important, it is one of their core assets that they have to build and nurture and maintain. So that's the second trend.
And then the third piece is—I started my career in car manufacturing a long, long, long time ago. And back in those days, the Japanese manufacturers, Toyota in particular, were really eating the lunch of the Ford, GM, Chryslers of the world, because the philosophy that a lot of the American car companies had was build it and then check for quality, and if it doesn't work, get out your hammer and start putting in shims and whatever. That was sort of the way that U.S. manufacturing had evolved. Toyota manufacturing basically said check at every step of the process and figure out if you have a quality issue, stop the line, fix the quality issue, keep going. What we're doing and what I think is the right way to build is you do that as you're coding as well. You clean as you code, you build software that is secure by design, and that is reliable by design. And we think that is the most secure and reliable way to build software. So all those three things together, we think, are the reason why we're here, why developers are adopting us, and why we think we're going to have a great business moving forward.
N
Nick Kolakowski16:52
It also seems like it would enable citizen developers to a certain extent. There's all these tools coming online, or people within companies who might not have formal developer training but, given the demands, need to code something.
T
Tariq Shaukat17:06
Yeah, I mean, I think you see this with all of the efforts around low code. I think a lot of the excitement around AI assistants, as I've seen, is that there actually aren't enough developers in the world for a software-centric world. And so more and more people are going to try and develop some code—whether they're going to become developers or not, I don't know—but they're going to try and develop some code. And again, a lot of what we do is clean as you code. It'll help you, it'll nudge you, it will identify issues and opportunities for you, and it will do it in a way that teaches you these things as you code. So we call it learn as you code as well. And it's just at every step in the way, instead of at the end of two days of working on something you get a report of every mistake that you made, it'll actually start to kind of nudge you, almost the way Grammarly does in making you a better writer. Grammarly does it by that annoying red squiggle that appears as you're typing something. We do the same thing but for coding, basically.
N
Nick Kolakowski18:08
I mean, speaking of somebody—I am personally a terrible coder. I can code but I'm not—there's a reason I'm a writer and a podcaster and not a full-time developer. So for somebody like me who kind of knows the basics, that would be wow—I might actually have to start shifting my career a little bit and start building apps if I have all these assist tools.
T
Tariq Shaukat18:25
Well, it's open source. You can go and download SonarLint right now and start using it, and it will be very eye-opening for you.
N
Nick Kolakowski18:31
And that's it, folks. It was fascinating talking to Tariq, given his keen insights into everything from AI and the cloud to coding. Here are some quick takeaways from our chat. First, while the current generation of code generators is exciting, the practice of coding is going to need human attention for quite some time to come. There's every chance that autogenerated code could introduce security, compliance, and other issues into your tech stack, so be aware. Second, across every industry, more and more companies are becoming software companies. Developers are more important than ever to a company's strategy and its outcomes. If you can build software in a reliable and secure way, you'll find a plethora of opportunities in a wide variety of places—you don't have to focus your job hunting efforts exclusively on the tech industry. Third, tools such as Sonar will likely lead to even more people within an organization generating code, even if they don't come from a traditional tech background. If you're any kind of management or team leader, keep that in mind as you plot workflows for your future products. We covered a whole lot of other topics during the episode, of course, so give it a relisten if there was something you missed. We'll see you next time, and remember, DICE is your best resource to find the tech talent you need to fill your open roles, and for technology professionals, the best place to grow your tech career.