la

Episode 215: Gang of Four – 20 Years Later

Johannes Thönes talks with Erich Gamma, Ralph Johnson and Richard Helm from the Gang of Four about the 20th anniversary of their book Design Patterns. They discuss the following topics: the definition of a design pattern and each guest’s favorite design pattern; the origins of the book in architecture workshops; the writing of the book […]




la

Episode 216: Adrian Cockcroft on the Modern Cloud-based Platform

Adrian Cockcroft discusses the challenges in creating a dynamic, flexible, cloud-based platform with SE Radio host Stefan Tilkov. After briefly discussing the definition of “cloud computing,” Adrian explains the history behind Netflix’s move to the cloud (which he led). After highlighting some of the differences that have developers and architects must face, Adrian talks about […]




la

Episode 223: Joram Barrez on the Activiti Business Process Management Platform

Josh Long talks to Activiti cofounder Joram Barrez about the wide world of (open source) workflow engines, the Activiti BPMN2 engine, and what workflow implies when you’re building process-driven applications and services. Joram was originally a contributor to the jBPM project with jBPM founder Tom Baeyens at Red Hat. He cofounded Activiti in 2010 at […]




la

Episode 229: Flavio Junqueira on Distributed Coordination with Apache ZooKeeper

 




la

SE-Radio-Episode-233-Fangjin-Yang-on-OLAP-and-the-Druid-Real-Time-Analytical-Data-Store




la

SE-Radio Episode 239: Andrew Clay Shafer on Modern Platform-as-a-Service




la

SE-Radio Episode 240: The Groovy Language with Cédric Champeau




la

SE-Radio Episode 243: RethinkDB with Slava Akhmechet




la

SE-Radio Epislode 250: Jürgen Laartz and Alexander Budzier on Why Large IT Projects Fail

Alex Budzier of the Oxford Saïd Business School and Jürgen Laartz of McKinsey Berlin join Robert Blumen to talk about the their research on large IT project failures. Why do large projects fail and to what extent are these failures avoidable?




la

SE-Radio-Episode-266:-Charles-Nutter-on-the-JVM-as-a-Language-Platform

Charles Nutter from the JRuby project talks to Charles Anderson about JRuby and the Java Virtual Machine (JVM) as a platform for implementing programming languages. They begin by discussing the Java platform beyond just the Java language. As a case study in implementing a language other than Java on the JVM, they discuss JRuby - what it is and how it’s implemented on the JVM. They discuss recent additions to the Java platform like the invoke-dynamic byte code and lambdas in Java 8. The conversation concludes by discussing the future of the Java language, platform, and virtual machine.




la

SE-Radio-Episode-275:-Josh-Doody-on-Salary-Negotiation-for-Software-Engineers

Marcus Blankenship talks with Josh Doody about salary negotiation. Topics include a framework for thinking about salary negotiations, how you can know what you're worth, the employers view of salary negotiation, and missed negotiation opportunities. Also discussed are common fears about negotiating and how to overcome them, common mistakes during negotiations, and how negotiation makes your more desirable as an employee.




la

SE-Radio Episode 277: Gil Tene on Tail Latency

Gil Tene joins Robert Blumen for a discussion of tail latency. What is latency? What is "tail latency"? Why are the upper percentiles of latency more relevant to humans? How is human interaction with an application influenced by tail latency? What are the economics of tail latency? What are the origins of tail latency within a system? What is the difference between response time and service time? How does queuing within a system contribute to response time? Java garbage collection and its contribution to latency outliers. How can we build systems with bounded tail latency out of components with variable latency? What type of observability to do we need to build systems with bounded latency? How is latency a driver of capacity planning?




la

SE-Radio Episode 289: James Turnbull on Declarative Programming with Terraform

James Turnbull joins Robert Blumen for a discussion of Terraform, an infrastructure-as-code tool, and a deep dive into how Terraform implements the declarative programming model.




la

SE-Radio Episode 292: Philipp Krenn on Elasticsearch

Phillipp Krenn talks with SE Radio’s Jeff Meyerson about Elasticsearch, a scalable search index. The conversation begins with a discussion of search, how it compares to database queries, and what an inverted index is. Phillipp introduces Wikipedia as an example that runs throughout the episode because Wikipedia uses Elasticsearch to power its full-text search. A discussion of Elasticsearch’s scalability ensues, including basic terminology and an explanation of other applications of Elasticsearch.




la

SE-Radio Episode 293: Yakov Fain on Angular

Yakov Fain talks with SE Radio’s Matthew Farwell about the Angular web development framework. The show covers the philosophy behind Angular; who would want to use the framework; how an Angular application is composed, including how to handle form submission and validation; why Typescript was chosen for Angular; how Angular uses reactive programming (RxJS, in particular); how to test an Angular application; security concerns of web applications; who developed Angular and how it is supported, and performance considerations of an Angular application.




la

SE-Radio Episode 303: Zachary Burt on Freelancing as a Career Option

Felienne interviews Zachary Burt about freelancing as a career option. How does freelancing differ from employment? How to do personal marketing and sales? How to find a work-life balance when you are self-employed? We also cover practical tips like deciding on an hourly rate and managing demanding customers.




la

SE-Radio-Episode-309-Zane-Lackey-on-Application-Security

Founder of Signal Sciences Zane Lackey talks with Kim Carter about Application Security around what our top threats are today, culture, threat modelling, and visibility, and how we can improve our security stature as Software Engineers.




la

SE-Radio Episode 313: Conor Delanbanque on Hiring and Retaining DevOps

Kishore Bhatia talks with Conor Delanbanque about DevOps Hiring, building and retaining top talent in the DevOps space. Topics include DevOps as a special Engineering skill, building DevOps mindset and culture, challenges in hiring and retaining top talent and building teams and best practices for DevOps engineers and employers hiring for these skills.




la

SE-Radio Episode 316: Nicolai Parlog on Java 9

Nate Black talks with Nicolai Parlog about Java 9. Topics include: a timeline of Java features; new patterns enabled by Java 8 lambdas, default interface implementations and how they enable code evolution; how Java 9 takes this further with private default methods; an introduction to Java modules: the Java Platform Module System (JPMS); “launch time” dependency validation; module “requires” and “exports”: documentation as code and a new topic for code reviews; how to migrate an existing codebase to Java 9 and modules; benefits of Java modules: reliable configuration and a smaller Java runtime; the new Java release schedule.




la

SE-Radio Episode 323: Lin Clark on WebAssembly

Lin Clark speaks to Matthew Farwell on WebAssembly




la

SE-Radio Episode 326 Dmitry Jeremov and Svetlana Isakova on the Kotlin Programming Language

Dmitry Jeremov and Svetlana Isakova speak to Matthew Farwell about the Kotlin programming language.




la

SE-Radio Episode 328: Bruce Momjian on the Postgres Query Planner

Postgres developer Bruce Momjian joins Robert Blumen for a discussion of the SQL query optimizer in the Postgres RDBMS. They delve into the internals of query planning and look at how developers can make it work for their apps.




la

SE-Radio Episode 334: David Calavera on Zero-downtime Migrations and Rollbacks with Kubernetes

Jeremy Jung talks with David Calavera about zero-downtime migrations and rollbacks with Kubernetes. In this episode we define migrations, rollbacks, and discuss how Netlify was able to migrate to Kubernetes and roll back off of it multiple times without impacting their users. David explains how developers can run old and new systems simultaneously, the importance of defining errors in your system, and when to apply fixes vs rolling back. We also discuss their decision to move to Kubernetes, and the benefits they received.




la

SE-Radio Episode 335: Maria Gorlatova on Edge Computing

Edaena Salinas talks with Maria Gorlatova about Edge Computing. Maria Gorlatova is an Associate Research Scholar at Princeton University Department of Electrical Engineering. The discussion covers: IoT, edge computing, the architecture of edge computing, running a machine learning model on the edge, and the benefits of edge computing.




la

SE-Radio Episode 338: Brent Laster on the Jenkins 2 Build Server

Brent Laster, author of a book on Jenkins 2, speaks with host Robert Blumen about the Jenkins 2 build server, CI/CD, DevOps and “pipeline as code”.




la

SE-Radio Episode 339: Jafar Soltani on Continuous Delivery for Multiplayer Games.mp3

Jafar Soltani of Rare (Microsoft Studios) discusses Continuous Delivery in AAA Games and how it can increase quality, reduce crunch, and deliver games faster. Topics include implementation and architecture, asset and delivery pipelines, and special challenges of games.




la

SE-Radio Episode 340: Lara Hogan and Deepa Subramaniam on Revitalizing a Cross-Functional Product Organization

Travis Kimmel talks with Lara Hogan and Deepa Subramaniam about evidence-based tactics that product and engineering leaders can use to can use to diagnose problems that are holding back their teams, and build healthier, high-performing organizations.




la

SE-Radio 341: Michael Hausenblas on Container Networking

Michael Hausenblas talks with host Kim Carter about topics covered in Michael’s ebook Container Networking, such as single vs. multi-host container networking, orchestration, Kubernetes, service discovery, and many more. Michael and Kim also discuss the roles that IPTables plays, how the allocation of IP addresses is handled, along with the assignment of ports. Overlay networks are covered along with topics such as the open Container Network Interface (CNI).




la

SE Radio Episode 342 - István Lam on Privacy by Design with GDPR

István Lam of Tresorit talks with host Kim Carter about GDPR (the EU General Data Protection Regulation, which has been described as “the most important change in data privacy regulation in 20 years.”)  The discussion covers terminology, planning, implementation, users' rights regarding their personal data, managing personally identifiable information (PII) across an organization, and required documentation. István talks about establishing the intent of different types of PII; when data can be shared or sold, when PII can be stored; storage of backups, and the ability to reveal, modify, or remove all of a customer's PII.




la

SE-Radio Episode 344: Pat Helland on Web Scale

Edaena Salinas talks with Pat Helland about Web Scale. Pat is a Principal Software Architect at Salesforce where he works on a cloud based multi-tenant database technology. The discussion covers: Datacenters and hardware, DevOps, developing at scale, stateless vs stateful services, preparing a system for failures and sql vs nosql databases.




la

SE-Radio Episode 347: Daniel Corbett on Load Balancing and HAProxy

Guest Daniel Corbett discusses how to scale your application with the help of load balancing. Hear details on HAProxy and the load balancing ecosystem as a whole.




la

SE-Radio Episode 354: Avi Kivity on ScyllaDB.mp3

Avi Kivity of Scylladb deep dives into the internals of Scylladb and what makes it a high performant version of Cassandra, a distributed key-value datastore. The discussion covers the architecture of Scylladb, its relationship with high performance...




la

Episode 374: Marcus Blankenship on Motivating Programmers

Motivation comes through relationships, safety, and environments which allow everyone to contribute.




la

Episode 379: Claire Le Goues on Automated Program Repair

Felienne interviews Claire Le Goues about automatic program repair. Can programs repair themselves and what techniques are involved in that?




la

Episode 386: Building Low Latency Applications with WebRTC

WebRTC provides real time video and audio streaming capabilities to applications. Spencer Dixon explains the different parts of WebRTC and how they used it to build a pair programming application.




la

Episode 397: Pat Helland on Data Management with Microservices.mp3

Pat Helland talks to host Akshay Manchale about Data Management at scale in a Microservices world. Pat talks about trends in managaging data in a distributed microservices world, immutability, idempotence, inside and outside data, descriptive...




la

Episode 400: Michaela Greiler on Code Reviews

Michaela Greiler spoke with SE Radio’s Felienne about code review best practices and how to improve the effectiveness of your reviews.




la

Episode 425: Paul Smith on The Crystal Programming Language and the Lucky Web Framework

Paul Smith discusses the Crystal Programming Language and the Lucky web framework with Jeremy Jung.




la

Episode 428: Matt Lacey on Mobile App Usability

Matt Lacey, author of the Usability Matters book discusses what mobile app usability is and why it can make or break an app destined for consumers, business users or in-house users and what you can do to make the best app possible.




la

Episode 430: Marco Faella on Seriously Good Software

Felienne interviews Marco Faella about his book ‘Seriously Good Software,’ which aims to teach programmers to use six key qualities to better analyze the quality of their code bases.




la

Episode 431: Ken Youens-Clark on Learning Python

Felienne spoke with Youens-Clark about new features in Python, why you should teach testing to beginners from the start and the importance of the Python ecosystem.




la

Episode 435: Julie Lerman on Object Relational Mappers and Entity Framework

Julie Lerman discusses Object Relational Mappers and Entity Framework with Jeremy Jung.




la

Episode 435: Julie Lerman on Object Relational Mappers and Entity Framework

Julie Lerman discusses Object Relational Mappers and Entity Framework with Jeremy Jung.




la

Episode 443: Shawn Wildermuth on Diversity and Inclusion in the Workplace

Felienne discusses diversity and inclusivity in software development with Shawn Wildermuth, Microsoft MVP and creator of the Hello World movie.




la

Episode 454: Thomas Richter Postgres as an OLAP database

Thomas Richter is the founder of Swarm64, a Postgres extension company designed to boost performance of your Postgres instance. This episode examines the internals of Postgres, performance considerations, and relational database types.




la

Episode 456: Tomer Shiran on Data Lakes

Tomer Shiran, co-founder of Dremio, talks about managing data inside a data lake, historical changes and motivations for managing data as a data lake, and the common tools and methods for ingestion, storage, and analytics on top of the underlying data.




la

Episode 458: Daniel Roth on Blazor

Daniel Roth from Microsoft discusses Blazor’s key features and benefits of using c# full stack for building web apps with host Priyanka Raghavan.




la

Episode 459: Otakar Nieder on Gaming vs Simulation Engines

Otakar Nieder, Senior Director of Development at Bohemia Interactive Simulations, discusses how simulation apps are different from gaming with host Kanchan Shringi.




la

Episode 464: Rowland Savage on Getting Acquired

Rowland Savage, author of How to Stick the Landing: The M&A Handbook for Startups, discusses how company acquisitions work, the three types, and why it is so important for software engineering startups to know the details to make an acquisition happen.




la

Episode 470: L. Peter Deutsch on the Fallacies of Distributed Computing

L Peter Deutsch of Aladdin Enterprises and formerly of Sun Microsystems joined host Jeff Doolittle to discuss the fallacies of distributed computing. Peter retold the history and origin of the fallacies and how they have been addressed over...