A Contrarian View of Software Architecture

Presented by: Jeremy Miller

I’ve spent an inordinate amount of time the past half decade across multiple companies working with very large, long running enterprise systems. Especially in long running, constantly changing systems, you want the code to be easy to understand, relatively painless to extend or modify, and when...

Tags: Programming Principles, ArchitectureFormat: General SessionLevel: Intermediate

Aerospace Engineering for Computer Scientists

Presented by: Ilyana Smith

It IS rocket science! What do the International Space station and Apollo 1 have to do with basic programming principles? What considerations need to be taken into account when computers go to space? How did computers impact the moon landing? (Hint: it wasn’t special effects!) In this session,...

Tags: Programming Principles, Project ManagementFormat: General SessionLevel: Introductory and overview

Agile and Sustainable: A Pragmatic Approach to Sustainable Tech

Presented by: Matt "Kelly" Williams

In this talk, we're going to explore why sustainability matters to IT, and why you should care about it too. ...

Tags: Programming Principles, Agile, System DesignFormat: General SessionLevel: Introductory and overview

AI for Highway Maintenance

Presented by: Jordan Thayer

Software touches every aspect of our lives, and no where is that clearer than in the automotive industry. With the recent surge to AI for self driving cars, we lose sight of adaptive cruise control, anti-lock breaks, and in-cab media centers that all require software to operate. ...

Tags: Programming Principles, Machine Learning, PerformanceFormat: General SessionLevel: Introductory and overview

Application Architecture Patterns

Presented by: Joseph Guadagno

Architecting an application can be challenging. What do you do to keep your application flexible to ever-constant requirement changes? How do you handle landscape changes (cloud, on-premises, databases)? How do you avoid over-engineering the application? How do I make sure my application plays well...

Tags: Programming Principles, Architecture, System DesignFormat: General SessionLevel: Intermediate

Async Masterclass

Presented by: Stephen Cleary

You've mastered async and await, but you find you need more powerful tools. This is how to build them. ...

Tags: .NET, C#, Programming PrinciplesFormat: General SessionLevel: Advanced

Black Box Techniques for Unit Tests

Presented by: Jenny Bramble

One of the greatest strengths of modern development is the ease of unit testing for many languages and frameworks. Obviously, you’re testing your code–but are you thoroughly testing it? Are you testing the right things? Is there more you could be testing? ...

Tags: Programming Principles, Code Quality, QA TestingFormat: General SessionLevel: Intermediate

Building Applications on Top of Large Language Models (LLMs) (Part 1)

Presented by: Nilanjan Raychaudhuri, BJ Allmon

It’s no secret that a new generation of powerful and highly-scaled language models is taking the world by storm. Large language models are becoming a powerful new primitive for building software. ...

Tags: Python, Programming Principles, Machine LearningFormat: PreCompilerLevel: Intermediate

Building Applications on Top of Large Language Models (LLMs) (Part 2)

Presented by: Nilanjan Raychaudhuri, BJ Allmon

It’s no secret that a new generation of powerful and highly-scaled language models is taking the world by storm. Large language models are becoming a powerful new primitive for building software. ...

Tags: Python, Programming Principles, Machine LearningFormat: PreCompilerLevel: Intermediate

Button masher to code master – Unity3D Workshop

Presented by: Mason Beale, Brendan Barth

Considered learning how to make video games, but never made the jump? Now is your time to press “space”! No matter your current career (or input device), explore your creative side in Unity and learn the essentials by improving, expanding and customizing a 3D Rollerball game. You’ll start with...

Tags: C#, Programming PrinciplesFormat: PreCompilerLevel: Introductory and overview

Clean Architecture with ASP.NET Core 8

Presented by: Steve Smith

Clean Architecture is a very popular approach for DDD and Microservices, and for good reason. It's not a new approach, and went by other names in the past (e.g. Onion, Hexagonal, Ports-and-Adapters). One of the main benefits of the approach is its focus on business logic and its reduction in...

Tags: .NET, C#, Backend, Object Oriented Programming, Programming Principles, Architecture, System Design, Code QualityFormat: General SessionLevel: Intermediate

Dude, Who Broke My Linux Server?

Presented by: Ryan Price, Justin DeBo

Linux-based operating systems are at the very core of the magic of computing technology -- and have been that core for decades. But software developers, data engineers, cloud engineers, and so many other disciplines often have no idea how to work effectively within those operating systems. What...

Tags: Backend, Programming Principles, DevOpsFormat: PreCompilerLevel: Intermediate

Expect the Unexpected: Handling Exceptions in Enterprise Applications

Presented by: Kito Mann

One of the most common reasons for software defects is poor exception handling. The more complex the application, the more difficult it can be to track down the root cause of a bug. An exception at the service or database layer may manifest itself as unpredictable behavior at the user interface...

Tags: Java, Programming Principles, Architecture, System DesignFormat: General SessionLevel: Intermediate

From Theory to Practice: Building Reliable Event-Driven Services

Presented by: Hugh McKee

This talk will delve into the key concepts and strategies for creating effective and efficient event-driven services. We will cover the following topics: ...

Tags: Java, Backend, Programming Principles, System DesignFormat: General SessionLevel: Intermediate

git gone wild: how to recover from common git mistakes.

Presented by: Magnus Stahre

"Oh no! I just typed something into git and now my work is gone! Ahh!" ...

Tags: Programming PrinciplesFormat: General SessionLevel: Intermediate

Java Anti-Patterns

Presented by: Vitaliy Matiyash

God object, spaghetti code, magic numbers? Anti-patterns are traps that developers encounter frequently due to lack of time, carelessness, inexperience, or pressure from project managers. Rushing can lead to big problems for applications in future, so you need to know how to avoid potential errors. ...

Tags: Java, Backend, Programming PrinciplesFormat: General SessionLevel: Introductory and overview

MSBuild Unleashed: Breaking Free From Complex CI Pipelines

Presented by: Dan Siegel

In today's rapidly evolving software landscape, Continuous Integration (CI) and Continuous Deployment (CD) are the linchpins of a streamlined and efficient development process. However, with myriad build platforms, technologies, and tooling, we often find ourselves entangled in complex build...

Tags: .NET, Programming Principles, CI/CDFormat: General SessionLevel: Intermediate

Off The Shelf AI (Part 1)

Presented by: Jordan Thayer, Robert Herbig

Hearing about artificial intelligence is unavoidable these days if you’re watching the news or staying abreast of the technical sector. We frequently hear about the power of AI-enabled tools, and are shown soundbytes of experts extolling the virtues of their approach. ...

Tags: Python, Programming Principles, Machine LearningFormat: PreCompilerLevel: Introductory and overview

Off The Shelf AI (Part 2)

Presented by: Jordan Thayer, Robert Herbig

Hearing about artificial intelligence is unavoidable these days if you’re watching the news or staying abreast of the technical sector. We frequently hear about the power of AI-enabled tools, and are shown soundbytes of experts extolling the virtues of their approach. ...

Tags: Python, Programming Principles, Machine LearningFormat: PreCompilerLevel: Introductory and overview

Platform as a Product: the future of Agile and DevOps

Presented by: Brad Nelson

Cross-functional teams and full-stack developers have become the expectation in today's highest-performing teams. However, as technology needs become more complex and solutions begin to scale, it becomes increasingly difficult for software engineers to balance expertise across all layers of the...

Tags: Programming Principles, DevOps, Agile, System DesignFormat: General SessionLevel: Intermediate

Practical Auth(entication|orization) for Developers

Presented by: Seth Petry-Johnson

It's never been easier to launch a website or expose services over HTTP. It's also never been easier to make rookie mistakes in the authentication of those services. ...

Tags: Programming Principles, SecurityFormat: General SessionLevel: Introductory and overview

Prime (re)Factoring

Presented by: Steve Smith

You've probably heard of refactoring, but did you know the term originates from the process of factoring programming code? In mathematics, factoring is used to pull out factors of numbers through division, and importantly prime numbers have factors of only themselves and the identity constant, 1. ...

Tags: .NET, C#, Object Oriented Programming, Programming Principles, Code QualityFormat: General SessionLevel: Introductory and overview

Software Test Automation ​and System Design

Presented by: Kate Jordan

In this session I'll share with you one of the most valuable lessons that I've learned as a software engineer. From what I've seen it's not something that colleges or courses have nearly enough emphasis on for the impact that it has. Both on your skills, and the health of the systems you work in. ...

Tags: Programming Principles, System Design, Code QualityFormat: General SessionLevel: Intermediate

Tactics for Building Background Services in .NET

Presented by: Kevin Griffin

Mature applications often find themselves in the predicament of having to do work "behind the scenes." Frequently this could be simple tasks such as sending emails or updating statistics. Or it could be something more complicated, like processing incoming files or building reports. These tasks...

Tags: .NET, C#, Backend, Programming Principles, Cloud, Architecture, System DesignFormat: General SessionLevel: Introductory and overview

Testing Mayhem on the Basic Side

Presented by: Jeanette Kalb

Did you ever wonder how a QA managed to find something you didn’t on that last feature card? Hint, it’s not magic, but there is a lot of mayhem. Your quality professionals need your help to help them test better. This talk will provide insight as to what your QA person goes through when deciding...

Tags: Programming Principles, Code Quality, QA TestingFormat: General SessionLevel: Introductory and overview

What Does Security Look Like When Building AI?

Presented by: Robert Herbig

Anyone who is working with AI or considering doing so should care about security. When considering building an AI-powered system or product, the traditional attack surfaces and mitigations still apply. However, new attack surfaces can be present depending on the specific AI approaches used. In...

Tags: Programming Principles, Security, Machine LearningFormat: General SessionLevel: Introductory and overview

Writing Secure APIs - A Look at the OWASP 2023 API Top 10 List

Presented by: Darylynn Ross

OWASP published a new API top 10 list in July of 2023. There are some old favorites hanging around (I'm looking at you Authentication) and some new comers like Server Side Request Forgery and Unrestricted Access to Sensitive Business Flows. This session will cover the new top 10 list and take a...

Tags: Programming Principles, Security, Code QualityFormat: General SessionLevel: Introductory and overview