The five mistakes I see teams new to Chaos Engineering make

Posted Leave a commentPosted in Management, Software Development, Technology

Chaos Engineering is taking over the world. Chaos Engineering provides a valuable framework and methodology to help teams better understand their complex systems and the behavior of them during real world events. It strives to help improve user experiences by validating assumptions about resiliency and detecting failures in systems before users experience these problems during a real issue. I love showing teams how to begin instituting Chaos Engineering in their organizations, but I tend to […]

Extreme Experimentation – How to minimize the feedback loop and deliver software constantly

Posted Leave a commentPosted in Management, Software Development, Technology

In order to outpace competitors, technology companies need to move faster in delivering features of value to their customers. Those who hit the market first often emerge as winners due to networking and first mover effects. While some companies can beat others with similar features based on size along, notably Instagram and Facebook, most companies need to maximize delivery speed to win. Methodologies like Agile or Extreme Programming seek to reduce development cycles with the […]

I am a force of Chaos: Why I practice Chaos Engineering to improve user experiences

Posted Leave a commentPosted in Software Development, Technology

As systems grow in size, they inherently grow in complexity. As complexity increases, systems eventually reach a point where no single individual can reasonably understand the entirety. At this point, when the interactions between components are unpredictable, the system becomes chaotic. This chaos can manifest in many ways including unintended retry storms, broken and degraded experiences for users, and often, cascading failures of an entire system. Rather than letting users discover this chaos, Chaos Engineering […]

Questions my mentees ask me

Posted Leave a commentPosted in Management, Software Development

I’ve been mentoring a few people who are interested in moving from an individual contributor to becoming a manager and they tend to have similar questions. Switching from working on individual work to managing a team is a massive transition, and one most companies don’t quite know how to manage. These people tend to be excellent performers at the individual level and are looking for new opportunities to grow and try something new, but the […]

Can Blockchain get kids to do their chores?

Posted Leave a commentPosted in Parenting, Software Development, Technology

Everyone is talking about Blockchain. As the technology that powers Bitcoin and other cryptocurrencies, the idea of a decentralized distributed secure ledger has struck a chord with those in a wide variety of industries. The secure and distributed nature of blockchain is being explored for usages in payments, legal contracts, and even health care. Chances are your bank is already dabbling in the technology. But the hardest challenge for blockchain yet might be getting kids […]

Sending AWS Cloudwatch Alarms to Amazon Chime

Posted Leave a commentPosted in Software Development, Technology

If you love Amazon Chime, and who doesn’t, you’ve probably already embraced it as a widespread communication platform for your team. Since moving to Chime a few months ago, my team has moved almost all communication onto it. We have a team chat room, rooms for individual projects, rooms for scheduling and coordinating testing, and ones for a variety of on-the-side projects and hobbies. We use it exclusively for scheduled meetings and adhoc conversations especially […]

I’m using Chaos Engineering to monkey with my children

Posted Leave a commentPosted in Family, Parenting, Software Development, Technology

What’s more complex, a large-scale distributed system or a child. For parents, it’s obvious. At least systems tend to behave rationally. However, much like children, large systems are inherently complex. As complexity increases, unforeseen behavior emerges and causes unpredictable results. Sound like a child? Chaos Engineering, a software engineering methodology, aims to understand that complexity through experiments. Chaos Engineering is the practice of utilizing experiments to better understand complex systems by intentionally causing chaos and measuring […]

An analysis of SparkJava for IoT Device Control

Posted Leave a commentPosted in Software Development, Technology

This is another great example of the awesome people I work with. One of my team members built a homegrown Internet connected controller for his A/C and used the opportunity to learn several new technologies including SparkJava. I love this kind of passion for learning new tech on personal projects. I can’t wait to see how we might use some of this.

Measuring Technical Debt and its cost with SonarQube

Posted Leave a commentPosted in Software Development, Technology

I am constantly amazed by the genius of the people I am surrounded by at work. While setting up a demo of SonarQube to show my team’s tech debt, I asked if anyone had experience with using it. I thought someone might have some pointers on setting it up. Instead, I got sent this research paper a team member wrote about a case study measuring debt with SonarQube. So cool!

Please stop quitting software development! We need your help.

Posted Leave a commentPosted in Equality, Software Development, Technology

For women in technology, life can be terrible. The male dominated field has recently come to light for being discriminatory, unfair, and often times completely hostile to females, but these problems have existed practically forever. After Susan Fowler’s piece about the harassment she faced at Uber, the manifesto published by a Google employee, and the sheer number of executives and leaders resigning from tech companies, it’s clear there is a huge problem in the industry, […]