Software Engineering Radio - the podcast for professional software developers podcast

Software Engineering Radio - the podcast for professional software developers

Software Engineering Radio is a podcast targeted at the professional software developer. The goal is to be a lasting educational resource, not a newscast. SE Radio covers all topics software engineering. Episodes are either tutorials on a specific topic, or an interview with a well-known character from the software engineering world. All SE Radio episodes are original content — we do not record conferences or talks given in other venues. Each episode comprises two speakers to ensure a lively listening experience. SE Radio is brought to you by the IEEE Computer Society and IEEE Software magazine.

Software Engineering Radio is a podcast targeted at the professional software developer. The goal is to be a lasting educational resource, not a newscast. SE Radio covers all topics software engineering. Episodes are either tutorials on a specific topic, or an interview with a well-known character from the software engineering world. All SE Radio episodes are original content — we do not record conferences or talks given in other venues. Each episode comprises two speakers to ensure a lively listening experience. SE Radio is brought to you by the IEEE Computer Society and IEEE Software magazine.

 

#648

SE Radio 643: Ganesh Datta on Production Readiness

Ganesh Datta, co-founder of Cortex.io, joins host Robert Blumen for a conversation about production readiness. The conversation covers the history of production readiness; its relationship to microservice architecture; the Google SRE model's impact on production readiness; production readiness checklists; the process; and production readiness transparency. ... Read more

10 hrs Ago

53 MINS

53:15

10 hrs Ago


#647

SE Radio 642: Simon Wijckmans on Third-Party Browser Script Security

Simon Wijckmans, founder of c/side -- a company that focuses on monitoring, securing, and optimizing third-party JavaScript -- joins SE Radio host <a href= "https://se-radio.net/team/kanchan-shringi/" target="_blank" rel= "noopener">Kanchan Shringi</a> for a conversation about the security risks posed by third-party browser scripts. Through real-world examples and insights drawn from his work in web security, Simon highlights the dangers, including malicious attacks such as the recent Polyfill.io incident. He emphasizes the need for vigilant monitoring, as these third-party scripts remain essential for website functionalities like analytics, chatbots, and ads, despite their potential vulnerabilities. Simon explores the use of self-hosting solutions and content security policies (CSPs) to minimize risks, but he stresses that these measures alone are insufficient to fully safeguard websites.  As the discussion continues, they delve into the importance of layering security approaches. Simon advocates for combining techniques like CSPs, real-time monitoring, and AI-driven analysis, which his company c/side employs to detect and block malicious scripts. He also touches on the complexities of securing single-page applications (SPAs), which allow scripts to persist across pages without full reloads, increasing the attack surface for third-party vulnerabilities. Brought to you by <a href= "https://www.computer.org" target="_blank" rel="noopener">IEEE Computer Society</a> and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software magazine</a>. ... Read more

13 Nov 2024

1 HR 07 MINS

1:07:32

13 Nov 2024


#646

SE Radio 641: Catherine Nelson on Machine Learning in Data Science

Catherine Nelson, author of the new O’Reilly book, Software Engineering for Data Scientists, discusses the collaboration between data scientists and software engineers -- an increasingly common pairing on machine learning and AI projects. Host <a href= "https://se-radio.net/team/philip-winston/">Philip Winston</a> speaks with Nelson about the role of a data scientist, the difference between running experiments in notebooks and building an automated pipeline for production, machine learning vs. AI, the typical pipeline steps for machine learning, and the role of software engineering in data science. Brought to you by <a href= "https://www.computer.org" target="_blank" rel="noopener">IEEE Computer Society</a> and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software</a> magazine. ... Read more

06 Nov 2024

48 MINS

48:19

06 Nov 2024


#645

SE Radio 640: Jonathan Horvath on Physical Security

Jonathan Horvath of [Z-bit] (https://z-bitco.com/) discusses physical access control systems (PACS) with host <a href= "https://se-radio.net/team/jeremy-jung/" target="_blank" rel= "noopener">Jeremy Jung</a>. They start with an overview of PACS components and discuss the proprietary nature of the industry, the slow pace of migration to open standards, and why Windows is commonly used. Jonathan describes the security implications of moving from isolated networks to the cloud, as well as credential vulnerabilities, encryption using symmetric keys versus asymmetric keys, and the risks related to cloning credentials. They also consider several standards, including moving from Wiegand to the Open Supervised Device Protocol (OSDP), as well as the Public Key Open Credential (PKOC) standard, and the open source OSDP implementation that Jonathan authored. Brought to you by [IEEE Computer Society] (https://www.computer.org/)  and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software</a> magazine. ... Read more

30 Oct 2024

59 MINS

59:19

30 Oct 2024


#644

SE Radio 639: Cody Ebberson on Regulated Industries

Cody Ebberson, CTO of Medplum, joins host [Sam Taggart] (../team/sam-taggart/) to discuss the constraints that working in regulated industries add to the software development process. They explore some general aspects of developing for regulated industries, such as healthcare and finance, as well as a range of specific considerations that can add complexity and effort. Cody describes how translating regulatory requirements into test specifications and automating those tests can help streamline software development in these regulated environments.  Brought to you by [IEEE Computer Society] (https://www.computer.org/)  and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software</a> magazine. ... Read more

23 Oct 2024

39 MINS

39:20

23 Oct 2024


#643

SE Radio 638: Nick Tune and Jean-Georges Perrin on Architecture Modernization

Nick Tune and Jean-Georges Perrin join host Giovanni Asproni to talk about their proposed approach to modernizing legacy systems. The episode starts with some high-level perspective to set context for the approach described in their book, Architecture Modernization (Manning, 2024). From there, the discussion turns to important details, including criteria for deciding which aspects to revisit; some of the activities, processes, and tools; and the importance of data engineering in modernization efforts. Nick and Jean-Georges describe how to successfully implement an architecture-modernization effort, and how to fit that work with the teams' other priorities. The episode finishes with some warnings about the typical risks associated with modernizing a legacy system, and suggestions on how to mitigate them. <a href= "https://www.qawolf.com/?utm_source=seradio&utm_medium=podcast&utm_campaign=sept2024" target="_blank" rel="noopener">This episode is sponsored by QA Wolf.</a> ... Read more

17 Oct 2024

1 HR 01 MINS

1:01:39

17 Oct 2024


#642

SE Radio 637: Steve Smith on Software Quality

Steve Smith, founder and principal architect at Nimble Pros, joins host Jeff Doolittle for a conversation about software quality. The episode begins with a discussion of why software quality matters for businesses, customers, and developers. Steve explains some patterns and practices that help teams design for quality. They discuss in detail the practices of testing and quality assurance, and the conversation wraps up with suggestions for fostering a culture of quality in teams and organizations. Brought to you by [IEEE Computer Society] (https://www.computer.org) and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software</a> magazine. ... Read more

10 Oct 2024

59 MINS

59:03

10 Oct 2024


#641

SE Radio 636: Sriram Panyam on SaaS Control Planes

Sriram Panyam, CTO at DagKnows, discusses SaaS Control Planes with SE Radio host <a href= "../../team/brijesh-ammanath/">Brijesh Ammanath</a>. The discussion starts off with the basics, examining what control planes are and why they're important. Sriram then discusses reasons for building a control plane and the challenges in designing one. They explore design and architectural considerations when building a SaaS control plane, as well as the key differences between a control plane and a data plane. <a href= "https://www.qawolf.com/?utm_source=seradio&utm_medium=podcast&utm_campaign=sept2024" target="_blank" rel="noopener">This episode is sponsored by QA Wolf.</a> ... Read more

02 Oct 2024

1 HR 02 MINS

1:02:23

02 Oct 2024


#640

SE Radio 635: Stevie Caldwell on Zero-Trust Architecture

Stevie Caldwell, Senior Engineering Technical Lead at Fairwinds, joins host Priyanka Raghavan to discuss zero-trust network reference architecture. The episode begins with high-level definitions of zero-trust architecture, zero-trust reference architecture, and the pillars of Zero Trust. Stevie describes four open-source implementations of the Zero Trust Reference Architecture: Emissary Ingress, Cert Manager, LinkerD, and the Policy Engine Polaris. Each component is explored to help clarify their roles in the Zero Trust journey. The episode concludes with a look at the future direction of Zero Trust Network Architecture. <a href= "https://www.qawolf.com/?utm_source=seradio&utm_medium=podcast&utm_campaign=sept2024" target="_blank" rel="noopener">This episode is sponsored by QA Wolf.</a> ... Read more

26 Sep 2024

50 MINS

50:21

26 Sep 2024


#639

SE Radio 634: Jim Bugwadia on Kubernetes Policy as Code

Jim Bugwadia, CEO of Nirmata and a committer to the Kyverno projects, joins host [Robert Blumen] (../../../team/robert-blumen) for a discussion of policy-as-code and the open source Kyverno project. The discussion covers the nature of policies; policies and security; policies and compliance to standards; security scans that generate reports compared to tools that allow or deny operations at run time; Kyverno as a kubernetes service; the Kyverno helm charts; the components of Kyverno; bootstrapping a kubernetes cluster with Kyverno; installing policies; implementing policies; customizing policies; packaging and installing policies; kubernetes dynamic admission controllers; the Kyverno admission controller; securing Kyverno itself; observability of Kyverno; types of reports and messages available to cluster users. <a href= "https://www.qawolf.com/?utm_source=seradio&utm_medium=podcast&utm_campaign=sept2024" target="_blank" rel="noopener">This episode is sponsored by QA Wolf.</a> ... Read more

25 Sep 2024

1 HR 02 MINS

1:02:22

25 Sep 2024


#638

SE Radio 633: Itamar Friedman on Automated Testing with Generative AI

Itamar Friedman, the CEO and co-founder of CodiumAI, speaks with host Gregory M. Kapfhammer about how to use generative AI techniques to support automated software testing. Their discussion centers around the design and use of Cover-Agent, an open-source implementation of the automated test augmentation tool described in the Foundations of Software Engineering (FSE) paper entitled “Automated Unit Test Improvement using Large Language Models at Meta“ by Alshahwan et al. The episode explores how large-language models (LLMs) can aid testers by automatically generating test cases that increase the code coverage of an existing testing suite. They also investigate other automated testing topics, including how Cover-Agent compares to different LLM-based tools and the strengths and weaknesses of using LLM-based approaches in software testing. ... Read more

11 Sep 2024

59 MINS

59:41

11 Sep 2024


#637

SE Radio 632: Goran Petrovic on Mutation Testing at Google

Goran Petrovic, a Staff Software Engineer at Google, speaks with host Gregory M. Kapfhammer about how to perform mutation testing on large software systems. They explore the design and implementation of the mutation testing infrastructure at Google, discussing the strategies for ensuring that it enhances both developer productivity and software quality. They also investigate the findings from experiments that quantify how mutation testing enables software engineers at Google to write better tests that can detect defects and increase confidence in software correctness. Brought to you by <a href= "https://www.computer.org" target="_blank" rel="noopener">IEEE Computer Society</a> and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software magazine</a>. ... Read more

05 Sep 2024

55 MINS

55:59

05 Sep 2024


#636

SE Radio 631: Abhay Paroha on Cloud Migration for Oil and Gas Operations

Abhay Paroha, an engineering leader with more than 15 years' experience in leading product dev teams, joins SE Radio's Kanchan Shringi to talk about cloud migration for oil and gas production operations. They discuss Abhay's experiences in building a cloud foundation layer that includes a canonical data model for storing bi-temporal data. They further delve into his teams' learnings from using Kubernetes for microservices, the transition from Java to Scala, and use of Akka streaming, along with tips for ensuring reliable operations. Brought to you by  [IEEE Computer Society] (https://www.computer.org/) and [IEEE Software magazine] (https://www.computer.org/software) . ... Read more

28 Aug 2024

58 MINS

58:53

28 Aug 2024


#635

SE Radio 630: Luis Rodríguez on the SSH Backdoor Attack

Luis Rodríguez, CTO of Xygeni.io, joins host [Robert Blumen] (https://se-radio.net/team/robert-blumen/) for a discussion of the recently thwarted attempt to insert a backdoor in the SSH (Secure Shell) daemon. OpenSSH is a popular implementation of the protocol used in major Linux distributions for authentication over a network. Luis describes how a backdoor in a supporting library was recently discovered and removed before the package was published to stable releases of the Linux distros. The conversation explores the mechanism of the attack through modifying a function table in the runtime; how the attack was inserted during the build; how the attack was carefully staged in a series of modifications to the lz compression library; the nature of “Jia Tan,” the entity who committed the changes to the open source project; social engineering that the entity used to gain the trust of the open source community; what forensics indicates about the location of the entity; hypotheses about whether criminal or state actors backed the entity; how the attack was detected; implications for other open source projects; why traditional methods for detecting exploits would not have helped find this; and lessons learned by the community. Brought to you by [IEEE Computer Society] (https://www.computer.org) and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software magazine</a>. ... Read more

22 Aug 2024

44 MINS

44:00

22 Aug 2024


#634

SE Radio 629: Emily Bache on Katas and the Importance of Practice

Emily Bache, founder of the Samman Technical Coaching Society and author of several books about technical agile coaching, talks with SE Radio host Sam Taggart about katas and the importance of practice. They discuss how practicing in a safe environment helps developers to learn new skills and build new habits. They also talk about how Samman coaching combines this sort of deliberate practice with applying the lessons learned in practice to the production code base. They also touch briefly on the advantages of working in an ensemble fashion. Brought to you by  [IEEE Computer Society] (https://www.computer.org) and [IEEE Software magazine] (https://www.computer.org/software) . ... Read more

13 Aug 2024

51 MINS

51:52

13 Aug 2024


#633

SE Radio 628: Hans Dockter on Developer Productivity

Hans Dockter, the creator of the Gradle build tool and founder of Gradle Inc, the company behind the developer productivity platform Develocity, joins SE Radio host Giovanni Asproni to talk about developer productivity. They start with some definitions and an explanation of the importance of developer productivity, its relationship with cognitive load, and the big impact that development tools have on it. Hans describes how to implement developer productivity metrics in an organization, as well as warns about some pitfalls. The episode closes with some discussion on Hans's views on the future of this discipline, as well as some near-term developments and expectations. Brought to you by  [IEEE Computer Society] (https://www.computer.org) and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software</a> magazine. ... Read more

07 Aug 2024

56 MINS

56:46

07 Aug 2024


#632

SE Radio 627: Chuck Weindorf on Leaders and Software Engineers

Chuck Weindorf, a retired IT director and chief engineer with nearly 40 years' experience in software engineering, joins host Jeff Doolittle for a conversation about the concepts in Chuck's book, Leaders & Software Engineers. Through personal anecdotes and insights gleaned from his extensive career, Chuck underscores quality assurance's critical role in building trust with users and fostering a proactive culture of defect resolution within development teams. He highlights how ethical considerations underpin trust and integrity within the software engineering profession. Chuck and Jeff examine the significance of thorough documentation and the vital role of effective communication in overcoming silos within organizations, and ensuring that projects meet their intended objectives while maintaining high standards of quality and reliability. They discuss how to cultivate a positive, innovative culture within engineering teams. Chuck shares strategies for addressing challenges and opportunities presented by change, advocating for adaptability and continuous learning as essential qualities for both new and experienced engineers navigating the evolving technological landscape. He offers advice for those transitioning into leadership roles, emphasizing the importance of developing soft skills and the ability to empathize with and inspire team members. Finally, the episode explores the potential impact of emerging technologies, such as low-code platforms and artificial intelligence. Brought to you by [IEEE Computer Society] (https://computer.org) and <a href= "https://computer.org/software" target="_blank" rel= "noopener">IEEE Software</a> magazine.  ... Read more

31 Jul 2024

57 MINS

57:07

31 Jul 2024


#631

SE Radio 626: Ipek Ozkaya on Gen AI for Software Architecture

Ipek Ozkaya, Principal Researcher and Technical Director of the Engineering Intelligent Software Systems group at the Software Engineering Institute, Carnegie Mellon, discusses generative AI for Software Architecture with SE Radio host Priyanka Raghavan. The episode delves into fundamental definitions of software architecture and explores use cases in which gen AI can enhance architecture activities. The conversation spans from straightforward to challenging scenarios and highlights examples of relevant tooling. The episode concludes with insights on verifying the correctness of output for software architecture prompts and future trends in this domain. Brought to you by <a href= "https://www.computer.org" target="_blank" rel="noopener">IEEE Computer Society</a> and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software magazine</a>. ... Read more

23 Jul 2024

59 MINS

59:33

23 Jul 2024


#630

SE Radio 625: Jonathan Schneider on Automated Refactoring with OpenRewrite

Jonathan Schneider, the cofounder of Moderne and the creator of OpenRewrite, talks with SE Radio's Gregory Kapfhammer about automated software maintenance. In addition to exploring the design and implementation of OpenRewrite, Schneider explains how the tool can automatically support software maintenance tasks such as framework migration and security fixes for programs implemented in languages like Java. The episode also explores how OpenRewrite uses the lossless semantic tree to support automated refactoring though the use of recipes. Brought to you by IEEE Computer Society and IEEE Software magazine. ... Read more

16 Jul 2024

52 MINS

52:45

16 Jul 2024


#629

SE Radio 624: Marcelo Trylesinski on FastAPI

Marcelo Trylesinski, a senior software engineer at Pydantic and a maintainer of open-source Python tools including Starlette and Uvicorn, joins host Gregory M. Kapfhammer to talk about FastAPI. Their conversation focuses on the design and implementation of FastAPI and how programmers can use it to create web-based APIs. They also explore how to create and deploy a FastAPI implemented in the Python programming language. Brought to you by IEEE Computer Society and IEEE Software magazine. ... Read more

16 Jul 2024

41 MINS

41:04

16 Jul 2024


#628

SE Radio 623: Michael J. Freedman on TimescaleDB

Michael J. Freedman, the Robert E. Kahn Professor in the Computer Science Department at Princeton University, as well as the co-founder and CTO of Timescale, spoke with SE Radio host <a title="‌" href= "https://se-radio.net/team/gavin-henry/" target="_blank" rel= "nofollow noopener noreferrer ugc">Gavin Henry</a> about TimescaleDB. They revisit what time series data means in 2024, the history of TimescaleDB, how it integrates with PostgreSQL, and they take the listeners through a complete setup. Freedman discusses the types of data well-suited for a timeseries database, the types of sectors that have these requirements, why PostgreSQL is the best, Pg callbacks, Pg hooks, C programming, Rust, their open source contributions and projects, data volumes, column-data, indexes, backups, why it is common to have one table for your timeseries data, when not to use timescaledb, IoT data formats, Pg indexes, how Pg works without timescaledb, sharding, and how to manage your upgrades if not using Timescale Cloud. Brought to you by <a href= "https://www.computer.org" target="_blank" rel="noopener">IEEE Computer Society</a> and <a href= "https://www.computer.org/software" target="_blank" rel= "noopener">IEEE Software</a> magazine. ... Read more

03 Jul 2024

1 HR 05 MINS

1:05:43

03 Jul 2024


#627

SE Radio 622: Wolf Vollprecht on Python Tooling in Rust

Wolf Vollprecht, the CEO and founder of Prefix.dev, speaks with host Gregory M. Kapfhammer about how to implement Python tools, such as package managers, in the Rust programming language. They discuss the challenges associated with building Python infrastructure tooling in Python and explore how using the Rust programming language addresses these concerns. They also explore the implementation details of Rust-based tooling for the Python ecosystem, focusing on the cross-platform Pixi package management tool, which enables developers to easily and efficiently install libraries and applications in a reproducible fashion. Brought to you by IEEE Computer Society and IEEE Software magazine. ... Read more

26 Jun 2024

55 MINS

55:10

26 Jun 2024


#626

SE Radio 621: Xe Iaso on Fly.io

Xe Iaso of Fly.io discusses their hosting platform with host Jeremy Jung. They cover building globally distributed applications with Anycast, using Wireguard to encrypt inter-service communication, writing custom code to handle load balancing and scaling with fly-proxy, why serving EU customers has unique requirements, letting users use docker images without the docker runtime by converting them to firecracker and cloud hypervisor microVMs, the differences between regular VMs and microVMs, challenges of acquiring and serving GPUs to customers. when to use Kubernetes, and dealing with abuse on the platform. Brought to you by IEEE Computer Society and IEEE Software magazine. ... Read more

19 Jun 2024

47 MINS

47:33

19 Jun 2024


#625

SE Radio 620: Parker Selbert and Shannon Selbert on Robust Job Processing in Elixir

Shannon Selbert, co-founder of Soren and developer of Oban, and Parker Selbert, creator of the Oban background job framework, chief architect at dscout, and co-founder of Soren, speak with SE Radio host <a href= "../team/gavin-henry/">Gavin Henry</a> about robust job processing in Elixir. They explore the reliability, consistency, and observability in relation to job processing, to understand how Oban, Elixir, and PostgreSQL deliver them. The Selberts describe why Oban was created, its history, which parts of the Elixir ecosystem they use, and why this would not be possible without PostgreSQL and Elixir. They discuss the lessons learned in the 5 years since the first release, as well as use cases, job throughput, the hardest problem to solve so far, workers, queues, CRON, distributed architectures, retry algorithms, just-once methodologies, the reliability the beam brings, consistency across nodes, how PostgreSQL is vital, telemetry data, best use cases for Oban, and the most common issues that new users face. Brought to you by IEEE Computer Society and IEEE Software magazine. ... Read more

12 Jun 2024

59 MINS

59:42

12 Jun 2024


#624

SE Radio 619: James Strong on Kubernetes Networking

Infrastructure engineer and Kubernetes ingress-Nginx maintainer James Strong joins host Robert Blumen to discuss the Kubernetes networking layer. The discussion draws on content from Strong’s book on the topic and covers a lot of ground, including: the Kubernetes network's use of different IP ranges than the host network; overlay network with its own IP ranges compared to using expanded portions of the host network ranges; adding routes with kernel extension points; programming kernel extension points with IP tables compared to eBPF; how routes are updated as the host network gains or loses nodes, the use of the Linux network namespace to isolate each pod; routing between pods on the same host; routing between pods across the host network; the container-network interface (CNI); the CNI ecosystem; differences between CNIs; choosing a CNI when running on a public cloud service; the Kubernetes service abstraction with a cluster-wide IP address; monitoring and telemetry of the Kubernetes network; and troubleshooting the Kubernetes network. Brought to you by IEEE Software magazine and IEEE Computer Society. ... Read more

05 Jun 2024

49 MINS

49:55

05 Jun 2024


#623

SE Radio 618: Andreas Møller on No-Code Platforms

Andreas Møller, founder of Toddle, a no-code tool for building scalable performant web applications, speaks with SE Radio's [Brijesh Ammanath] (https://se-radio.net/team/brijesh-ammanath/) about no-code platforms. They discuss the role of developers in a no-code ecosystem and explore scalability and performance considerations, as well as enterprise adoption of no-code tools. Andreas also expands on why he built Toddle.dev and its unique features. Brought to you by IEEE Computer Society and IEEE Software. ... Read more

29 May 2024

53 MINS

53:53

29 May 2024


#622

SE Radio 617: Frances Buontempo on Modern C++

Frances Buontempo, author of the new book Learn C++ by Example, discusses the C++ programming language, a widely used general-purpose programming language. Host Philip Winston spoke with Buontempo about where C++ fits into the landscape of existing programming languages and how recent C++ standards have changed things. They talk about specific language features such as lambdas, templates, concurrency, ranges, concepts along with tips for learning and using C++. Brought to you by IEEE Software and IEEE Computer Society. ... Read more

23 May 2024

1 HR 11 MINS

1:11:16

23 May 2024


#621

SE Radio 616: Ori Saporta on the Role of the Software Architect

Ori Saporta, co-founder and Systems Architect at vFunction, joins host Jeff Doolittle for a conversation about the role of the software architect. The episode begins with Ori’s thoughts on what is typically missed or overlooked regarding this role. The conversation then explores aspects of both hard and soft skills required of software architects. Other topics include the relationship of the software architect to other roles, to design and process, and to quality. The show concludes by addressing the importance of dependency management by software architects. Brought to you by IEEE Software magazine and IEEE Computer Society. ... Read more

15 May 2024

54 MINS

54:56

15 May 2024