Theo has been designing and implementing .NET based applications, components, and frameworks since .NET 1.0 with a focus on scalable and maintainable solutions.
Accidentally, becoming a manager in 2012, Theo has embraced the engineering manager path currently working as a Senior Director of Engineering at AppDynamics. He contributed to the success of AppDynamics, scaling from 70 employees to over 2000 and being acquired three days before the IPO for $3.7B by Cisco.
Theo's expertise is understanding systems, identifying patterns and defining and implementing best practices in software, architecture, or organization.
All Clean Code presentations provide great value by themselves, but taken together are designed to offer a holistic approach to successful software creation. This first session creates the foundation for the 2nd Clean Code presentation on The Art of Decoupling, as it explains expected base knowledge. Why writing Clean Code makes us more efficient Over the lifetime of a product, maintaining the product is actually one - if not the most - expensive area(s) of the overall product costs.
Writing clean code can significantly lower these costs. However, writing clean code also makes you more efficient during the initial development time and results in more stable code. You will be presented design patterns and best practices which will make you write better and more easily maintainable code, seeing the code in a holistic way.
You will learn how to apply them by using an existing implementation as the starting point of the presentation. Finally, patterns & practices benefits are explained.
This presentation is based on C# and Visual Studio 2017. However, the demonstrated patterns and practice can be applied to every other programming language too. Slides: http://www.slideshare.net/theojungeblut/clean-code-i-best-practices
This session is about your career perspective as an engineer, especially when the path may take an “unexpected” turn from technical lead to first-time engineering manager. We will explore the differences between managing and leading, review different management styles, and discuss their impact on both the manager and the team member.
Finally, we will find out why you do not want to treat everyone equally. I will share my personal experiences going from being one of the team to actually managing it: the pitfalls of suddenly being responsible for the team, typical problems surfacing, and how to avoid common mistakes.
As part of the session, I would also like to share thoughts and considerations about which career path could be the right one for whom, and what the advantages and disadvantages are going one way or the other. This is not a “You get it all from the expert”- session, but a session to share experiences and discuss how this fits to your career path.
Why writing Clean Code makes us more efficient? Over the lifetime of a product, maintaining the product is actually one - if not the most - expensive area(s) of the overall product costs.
We will dive into why decoupling is so crucial and what design patterns, best practices, and technologies are out there to do it right and want can go wrong.
We start by reviewing the basics of Inversion of Control (IOC) and Dependency Injection (DI) and different ways of achieving decoupling on class-level, using and exploring both: Best Practices, Design and Anti Patterns. Then we will move into Microservices, how these push decoupling to the next level and how to combine the different patterns for an extensible, supportable and maintainable code base.
This presentation requires knowledge and understanding of basics like DRY, SoC, SRP, SOLID etc. which are building the base for decoupled architecture. However, we will start at the basics of DI and will work towards intermediate scenarios for DI and Microservices depending on the participating group.
This presentation is based on C# and Visual Studio 2017. However, the demonstrated patterns and practice can be applied to every other programming language too.