Speaker Details

Daniel Sokolowski
University of St.Gallen

Daniel Sokolowski is a research associate and Ph.D. candidate at the Programming Group, University of St. Gallen, Switzerland. He holds a Master of Science in Internet- and Web-based Systems from the Technical University of Darmstadt, Germany. With a background as a developer at Lufthansa and as a CTO in a software startup, Daniel brings a blend of industry experience and academic rigor to his research.


Daniel's research focuses on software engineering, with a recent focus on reliable Infrastructure as Code (IaC) for modern IT organizations. Daniel's work has been published and recognized at top software engineering venues, including ICSE, ESEC/FSE, OOPSLA, and IEEE Software. With a passion for innovation and strategic problem-solving in interdisciplinary teams, Daniel combines decisiveness and a drive for excellence with the courage to improve continuously.


Internship wanted: I am looking for Software Engineering research internships in the industry for 2024. Please reach out regarding any interesting opportunities.

View
Infrastructure as Code Programs: How to Test, Finally
Conference (INTERMEDIATE level)
Room C

With the rise of Infrastructure as Code (IaC) solutions such as Pulumi and AWS CDK, developers embrace crafting IaC programs in beloved general-purpose programming languages like TypeScript, Python, and Java. The imperative IaC programs define the declarative configuration of the deployment. These programs must be correct because faults can cause malfunction and security issues. Luckily, using well-established programming languages provides access to testing techniques and tools developed for traditional software. Yet, IaC developers rely predominantly on time-consuming integration testing or bypass testing altogether. As a result, even simple bugs are found late, tremendously slowing down the development process.

This talk delves into the challenges of unit testing IaC programs and showcases our solution: ProTI is an automated unit testing approach that quickly tests IaC programs in many different configurations. ProTI improves the velocity of IaC development by mocking all cloud resources in the code, replacing them with pluggable oracles that validate all resources' configurations and a generator for realistic test inputs. ProTI is available for Pulumi TypeScript with the first generator and oracle plugins. ProTI enables programmers to quickly test their IaC programs, and it enables the community to rapidly prototype and explore new oracles and generators for efficient IaC program testing.

More

Searching for speaker images...