Working with an existing system and its architecture can be a challenge, especially when it comes to adopting newer technologies. What may originally have been an appropriate architecture, may not now easily accommodate these newer technologies
Do we tackle the problem by refactoring our system, or do we need an overhaul?
More often than not, business critical features don’t allow for a rewrite nor a rebuild, so we are faced with shoehorning new features into the existing project using the older framework or architecture.
This is where serverless technologies, such as Azure Functions, can come to the rescue.
By using Azure Functions you can create solutions using modern .NET/C# features without necessarily touching older parts of our existing software.
In this session I will show you how to build a service using Azure Functions.
We will use a variety of function triggers such as HTTP and Queue, combining them together into a self contained service that can co-exist with our existing project.
We’ll also cover security, developing functions locally, architecture and much more.
Developing applications for the cloud has never been faster or easier than it is today. The speed at which new applications can be created and deployed has enabled more innovation than ever before. Unfortunately, Azure is not always forgiving of mistakes. From serverless applications that suddenly stop working to big data solutions that fail with a few dozen concurrent queries, most Azure application failures have the same root causes. In this session, learn about the top mistakes that are frequently made by teams adopting Azure, and how to avoid these surprisingly common issues.
C# 10 is out and has quite a few new features. Come join compiler engineers Chris and Fred as they give you an overview of the new additions, including improvements to structs, usings, interpolated strings, and more. We’ll also look at the public preview for abstract static members in interfaces, available in preview to try now with .NET 6. Finally, we’ll talk about some potential features on the docket for C# 11 and beyond.
In this session we will introduce two topics, AutoML and AutoML model training code generation, so you’ll get familiar with the scenarios you can target:
Automated Machine Learning, also referred to as Automated ML or AutoML, is the process of automating the time consuming, iterative tasks of machine learning model development. It allows data scientists, analysts, and developers to quickly and easily build ML models with high scale, efficiency, and productivity all while sustaining model quality. Apply automated ML when you want Azure Machine Learning to train and tune a model for you using the target metric you specify. Automated ML democratizes the machine learning model development process.
‘AutoML Code Generation’ makes AutoML a ‘White Box’ AutoML solution by allowing the user to select any AutoML trained model (winner or child model) and generate the Python training code that created that specific model. Then, explore, customize, and retrain the model using Python before deploying to Azure ML Endpoints or your selected inference execution environment.
Basically, with this feature AutoML generates Python code showing you how data was preprocessed and how algorithms were used exactly, so not only you can understand what AutoML did, you can also reuse and customize that code for further manual tweaking and tuning.
Note: AutoML is a GA feature within Azure ML. Code Generation is a feature in private preview within AutoML.
Microsoft enables digital transformation for the era of an intelligent cloud and an intelligent edge. Its mission is to empower every person and every organization on the planet to achieve more.
Architects often describe their work in diagrams and other visual artifacts, but how can they test to see if the implementation is aligned with the architecture? Architects are expected to not only design new systems, but continuously govern what they’ve already built and ensure that their architecture is aligned with the technical and business environment. This session uncovers a new way to think about architecture—as code. Architecture as Code is a new concept that allows you to describe an architecture through executable source code, therefore allowing you to govern the architecture as well. In this session we discuss numerous intersections of software architecture with all the tendrils of the organization, including implementation, infrastructure, engineering practices, team topologies, data topologies, systems integration, the enterprise, the business environment, and generative AI, defining each intersection using architecture-as-code to verify that the architecture is properly aligned.
A common saying by software architects is “that’s an implementation detail”. All too often we treat software architecture and implementation as two separate things, where implementation is something that happens once a software architecture is defined. In fact, it’s the other way around: software architecture should be viewed as a first draft, where implementation reveals more details and refinements. In this session Mark Richards discusses the intersection of architecture and implementation and how the two must be in constant alignment to achieve success, demonstrating along the way why architecture is a critical element of any system. Through real-world examples, he shows how implementation can easily get out of alignment with the architecture, causing the system to fail to achieve its desired goals. He then shows some techniques and tools to help ensure the alignment between architecture and implementation.
Production agentic AI needs more than agents.
It needs structure. It needs boring stuff: observability, modularity, data profiling, and monitoring.
Otherwise, it becomes chaos with a personality, fancy demos that fail silently in production.
In this talk, we’ll show you how old-school software and MLOps principles are the secret weapon for building real, scalable, and reliable agentic systems.
No hype. No buzzword bingo.
Just field-tested thinking and hard-learned lessons from production AI deployments.
What you’ll take home:
* A framework to cut through the noise and think clearly about agentic architecture
* How to debug, observe, and monitor agents like real software systems
* How to avoid the trap of shiny tools and focus on system design that actually works
* A checklist for building agentic AI that doesn’t crash after your first user touches it
In today’s fast-paced, global market, companies must be agile, responsive, and interconnected. A connected Product Lifecycle Management (PLM) environment is no longer a luxury but a necessity. This transformation is powered by advanced technologies such as cloud computing, the Internet of Things (IoT), Artificial Intelligence/Machine Learning (AI/ML), digital twins, and digital threads.
These technologies offer unprecedented opportunities to enhance efficiency, collaboration, and innovation across the entire product lifecycle. However, they also present significant challenges, particularly in terms of system integration and data management. Properly managed, these tools can revolutionize your operations, breaking down data silos and streamlining processes from product conception to retirement.
By integrating these digital tools, experts can transform their PLM systems into robust, dynamic platforms that not only meet but exceed the demands of the digital age.
Join us in exploring how these technologies can revolutionize your PLM strategy and drive a company’s success.
When teams adopt Microservices with an understanding of the structure of the architecture, but not of how to get all the pieces to communicate, it is all too easy to accidentally create a distributed Big Ball of Mud. Neal introduces a new measure, the architecture quantum, to help analyze and identify communication boundaries and define static and dynamic coupling. Then, the session provides tools – integrators and disintegrators – to help architects iterate towards the correct granularity for their Microservices for static coupling. Next, for dynamic coupling, architects must understand when to choose synchronous versus asynchronous communication between services, consistency, and coordination to ultimately analyze transactional sagas; this talk describes eight possible sagas and when each is applicable.
Leadership Coach and author Andrei Postolache talks about the attitudes, behaviours and skills that high performance Individual Contributors and Leaders need to succeed in today’s world. Based on his work with hundreds of teams and individuals, he narrows down the essential organizational, communicational and inter-relational skills that truly make the difference.
During this session, you’ll discover how GenAI is transforming Quality Engineering efficiently and cost-effectively. From summarizing specifications to designing manual test cases, GenAI streamlines early QA activities. It also revolutionizes automation code and test framework architecture.
Join us to see how GenAI makes Quality Engineering faster and easier!
Coding has always been more than just writing lines of code; it’s about solving puzzles, creating solutions, and adapting to challenges. But what happens when AI begins to tackle those puzzles as well? How will your role evolve in this new landscape?
As AI integrates deeper into our toolsets and workflows, the real revolution isn’t about simply learning new technologies. It’s about fundamentally changing the way we think, how we architect solutions, and our entire approach to software development. This talk cuts through the AI hype and zeroes in on your growth as a developer.
Discover practical strategies to leverage AI beyond mere automation, unlock untapped creativity, strategic thinking, and problem-solving. It’s time to not just write code, but to reforge it, leveraging AI as a powerful ally in your journey towards mastery.
As our industry has evolved through various paradigm shifts, certain fundamental patterns continually emerge despite changing technologies and methodologies. In this keynote, Michael Feathers examines why we repeatedly rediscover similar solutions across decades and propose that there may be one deeper universal principle governing effective software design. Though this singular principle might appear to be an over-generalization, it provides surprisingly good guidance across contexts. Drawing connections between biological scaling laws, human cognitive limitations, and software architecture patterns, I challenge you to look beyond surface-level best practices to understand the underlying forces that shape successful systems. This perspective—discovering the fundamental principle that underlies all principles—could transform how we approach software design challenges at any scale, helping us make more intentional design decisions that withstand the test of time.