Ken Sipe

Cloud Architect

Ken is a distributed application engineer. Ken has worked with Fortune 500 companies to small startups in the roles of developer, designer, application architect and enterprise architect. Ken's current focus is on containers, container orchestration, high scale micro-service design and continuous delivery systems.

Ken is an international speaker on the subject of software engineering speaking at conferences such as JavaOne, JavaZone, Great Indian Developer Summit (GIDS), and The Strange Loop. He is a regular speaker with NFJS where he is best known for his architecture and security hacking talks. In 2009, Ken was honored by being awarded the JavaOne Rockstar Award at JavaOne in SF, California and the JavaZone Rockstar Award at JavaZone in Oslo, Norway as the top ranked speaker.

Presentations

Navigating the Cloud as a Cloud Architect

5:00 PM MDT

In the age of digital transformation, Cloud Architects emerge as architects of the virtual realm, bridging innovation with infrastructure. This presentation offers a comprehensive exploration of the Cloud Architect's pivotal role.

Delving into cloud computing models, architecture design, and best practices, attendees will gain insights into harnessing the power of cloud technologies. From optimizing scalability and ensuring security to enhancing efficiency and reducing costs, this session unravels the strategic decisions and technical expertise that define a Cloud Architect's journey. Join us as we decode the nuances of cloud architecture, illustrating its transformative impact on businesses in the modern era.

Architectural Awareness: Engineering Super-skill

11:00 AM MDT

Awareness is the knowledge or perception of a situation or fact, which based on myriad of factors is an elusive attribute. Likely the most significant unasked for skill… perhaps because it's challenging to “measure” or verify. It is challenging to be aware of aware, or is evidence of it's adherence. This session will cover different levels of architectural awareness. How to surface awareness and how you might respond to different technical situations once you are aware.

Within this session we look holistically an engineering, architecture and the software development process. Discussing:

* Awareness of when process needs to change (original purpose of Agile)
* Awareness of architectural complexity
* Awareness of a shift in architectural needs 
* Awareness of application portfolio and application categorization 
* Awareness of metrics surfacing system challenges
* Awareness of system scale (and what scale means for your application)
* Awareness when architectural rules are changing
* Awareness of motivation for feature requests
* Awareness of solving the right problem

The focus of the session will be mindful (defined as focusing on one's awareness), commentating in sharing strategies for heightening awareness as an architect and engineer.

Becoming an Architect: Nurturing Essential Skills for Success

1:30 PM MDT

Embarking on the journey to become an architect requires more than technical expertise; it demands a diverse skill set that combines creativity, leadership, communication, and adaptability. You may be awesome as a developer or engineer, but the skills needed to be an architect are often different and require more than technical awareness to succeed.

This presentation delves into the crucial skills aspiring architects need to cultivate. From mastering design principles and embracing cutting-edge technologies to honing collaboration and project management abilities, attendees will gain valuable insights into the multifaceted world of architectural skills. Join us as we explore practical strategies, real-world examples, and actionable tips that pave the way for aspiring architects to thrive in a dynamic and competitive industry.

Architectural Principles: Building the Foundations of Design Excellence

3:15 PM MDT

In the realm of architecture, principles form the bedrock upon which innovative and enduring designs are crafted. This presentation delves into the core architectural principles that guide the creation of structures both functional and aesthetic. Exploring concepts such as balance, proportion, harmony, and sustainability, attendees will gain profound insights into the art and science of architectural design. Through real-world examples and practical applications, this session illuminates the transformative power of adhering to these principles, shaping not only buildings but entire environments. Join us as we unravel the secrets behind architectural mastery and the principles that define architectural brilliance.

Good architectural principles are fundamental guidelines or rules that inform the design and development of software systems, ensuring they are scalable, maintainable, and adaptable. Here are some key architectural principles that are generally considered valuable in software development:

  • Modularity
  • Simplicity
  • Scalability
  • Flexibility
  • Reusability
  • Maintainability
  • Performance
  • Security
  • Testability
  • Consistency
  • Interoperability
  • Evolutionary Design

Adhering to these architectural principles can lead to the development of robust, maintainable, and adaptable software systems that meet the needs of users and stakeholders effectively.

Standing up Enterprise Architecture

5:00 PM MDT

The organization has grown and one line of business has become 2 and then 10. Each line of business is driving technology choices based on their own needs. Who and how do you manage alignment of technology across the entire Enterprise… Enter Enterprise Architecture! We need to stand up a new part of the organization.

This session will define the role of architects and architectures. We will walk through a framework of starting an Enterprise Architecture practice. Discussions will include:

  • Differences of EA teams from one organization to another
  • Different architectural roles
  • Challenges that face EA
  • How to start or refine an EA practice

Go for Java Developers

8:30 AM MDT

Looking to go beyond the basics of Go. In my Golang for Java developers we teach the basics of Go while building out different labs to demonstrate an understanding of the concepts.

This session is the next stage of more deeply understanding some of the more advanced or new features in Golang which include:

  • Concurrency
  • Channels
  • Error Handling
  • Generics
  • WASI
  • New 1.20 and 1.21 language features

Go for Java Developers

10:30 AM MDT

Looking to go beyond the basics of Go. In my Golang for Java developers we teach the basics of Go while building out different labs to demonstrate an understanding of the concepts.

This session is the next stage of more deeply understanding some of the more advanced or new features in Golang which include:

  • Concurrency
  • Channels
  • Error Handling
  • Generics
  • WASI
  • New 1.20 and 1.21 language features

Books

Spring Recipes: A Problem-Solution Approach (Expert's Voice in Open Source)

by Gary Mak, Daniel Rubio, and Josh Long

With over 3 million users/developers, Spring Framework is the leading “out of the box” Java framework. Spring addresses and offers simple solutions for most aspects of your Java/Java EE application development, and guides you to use industry best practices to design and implement your applications.

The release of Spring Framework 3 has ushered in many improvements and new features. Spring Recipes: A Problem-Solution Approach, Second Edition continues upon the bestselling success of the previous edition but focuses on the latest Spring 3 features for building enterprise Java applications. This book provides elementary to advanced code recipes to account for the following, found in the new Spring 3:

  • Spring fundamentals: Spring IoC container, Spring AOP/ AspectJ, and more
  • Spring enterprise: Spring Java EE integration, Spring Integration, Spring Batch, jBPM with Spring, Spring Remoting, messaging, transactions, scaling using Terracotta and GridGrain, and more.
  • Spring web: Spring MVC, Spring Web Flow 2, Spring Roo, other dynamic scripting, integration with popular Grails Framework (and Groovy), REST/web services, and more.

This book guides you step by step through topics using complete and real-world code examples. Instead of abstract descriptions on complex concepts, you will find live examples in this book. When you start a new project, you can consider copying the code and configuration files from this book, and then modifying them for your needs. This can save you a great deal of work over creating a project from scratch!

What you’ll learn

  • How to use the IoC container and the Spring application context to best effect.
  • Spring’s AOP support, both classic and new Spring AOP, integrating Spring with AspectJ, and load-time weaving.
  • Simplifying data access with Spring (JDBC, Hibernate, and JPA) and managing transactions both programmatically and declaratively.
  • Spring’s support for remoting technologies (RMI, Hessian, Burlap, and HTTP Invoker), EJB, JMS, JMX, email, batch, scheduling, and scripting languages.
  • Integrating legacy systems with Spring, building highly concurrent, grid-ready applications using Gridgain and Terracotta Web Apps, and even creating cloud systems.
  • Building modular services using OSGi with Spring DM and Spring Dynamic Modules and SpringSource dm Server.
  • Delivering web applications with Spring Web Flow, Spring MVC, Spring Portals, Struts, JSF, DWR, the Grails framework, and more.
  • Developing web services using Spring WS and REST; contract-last with XFire, and contract–first through Spring Web Services.
  • Spring’s unit and integration testing support (on JUnit 3.8, JUnit 4, and TestNG).
  • How to secure applications using Spring Security.

Who this book is for

This book is for Java developers who would like to rapidly gain hands-on experience with Java/Java EE development using the Spring framework. If you are already a developer using Spring in your projects, you can also use this book as a reference—you’ll find the code examples very useful.

Table of Contents

  1. Introduction to Spring
  2. Advanced Spring IoC Container
  3. Spring AOP and AspectJ Support
  4. Scripting in Spring
  5. Spring Security
  6. Integrating Spring with Other Web Frameworks
  7. Spring Web Flow
  8. Spring @MVC
  9. Spring RESTSpring and Flex
  10. Grails
  11. Spring Roo
  12. Spring Testing
  13. Spring Portlet MVC Framework
  14. Data Access
  15. Transaction Management in Spring
  16. EJB, Spring Remoting, and Web Services
  17. Spring in the Enterprise
  18. Messaging
  19. Spring Integration
  20. Spring Batch
  21. Spring on the Grid
  22. jBPM and Spring
  23. OSGi and Spring