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...
Format: General SessionLevel: IntermediateAerospace 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,...
Format: General SessionLevel: Introductory and overviewAgile 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. ...
Format: General SessionLevel: Introductory and overviewAI 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. ...
Format: General SessionLevel: Introductory and overviewApplication 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...
Format: General SessionLevel: IntermediateAsync 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. ...
Format: General SessionLevel: AdvancedBlack 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? ...
Format: General SessionLevel: IntermediateBuilding 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. ...
Format: PreCompilerLevel: IntermediateBuilding 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. ...
Format: PreCompilerLevel: IntermediateButton 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...
Format: PreCompilerLevel: Introductory and overviewClean 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...
Format: General SessionLevel: IntermediateDude, 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...
Format: PreCompilerLevel: IntermediateExpect 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...
Format: General SessionLevel: IntermediateFrom 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: ...
Format: General SessionLevel: Intermediategit 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!" ...
Format: General SessionLevel: IntermediateJava 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. ...
Format: General SessionLevel: Introductory and overviewMSBuild 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...
Format: General SessionLevel: IntermediateOff 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. ...
Format: PreCompilerLevel: Introductory and overviewOff 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. ...
Format: PreCompilerLevel: Introductory and overviewPlatform 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...
Format: General SessionLevel: IntermediatePractical 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. ...
Format: General SessionLevel: Introductory and overviewPrime (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. ...
Format: General SessionLevel: Introductory and overviewSoftware 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. ...
Format: General SessionLevel: IntermediateTactics 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...
Format: General SessionLevel: Introductory and overviewTesting 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...
Format: General SessionLevel: Introductory and overviewWhat 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...
Format: General SessionLevel: Introductory and overviewWriting 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...
Format: General SessionLevel: Introductory and overview