Prioritize Your (or Your Client’s) Projects Using Relative Weighting

I was recently working with a client that was considering many different software projects and struggling to decide which should come first. Each project was valuable in its own way, but when we began comparing them, we weren’t getting far. Then, I remembered an exercise that I did during my Scrum Product Owner training called relative weighting. Read more on Prioritize Your (or Your Client’s) Projects Using Relative Weighting…

Three Ways to Improve Your Sprint Demo

The demo is one of the most important aspects of the sprint ceremony. At this point, your client has already seen the visual design of new features, but this is their first chance to see features in action.

I’ve been a part of some very successful feature demos, and some that haven’t gone so well. Here are three tips to make your next sprint demo a successful one. Read more on Three Ways to Improve Your Sprint Demo…

Three Ways To Empower Your Team as a Senior Developer

At Atomic, we work in small, self-managing teams. This means that everyone on the team has the chance to communicate with the client.

Unfortunately, it can be easy for senior developers to become the entire voice of their team and make their teammates feel like their opinions and contributions aren’t appreciated. This may lead to FUDA, poor performance, and low morale within the team. Here are three things I’ve learned that help empower and build trust with your team. Read more on Three Ways To Empower Your Team as a Senior Developer…

Making Your System Tests More Readable

When I ramp onto a new project, one of the first things I do is to look at the system test suite. Because system tests exercise the entire system, they are a great place to document the intent and assumptions built into your application. When they are written well, they can be a source of documentation and a tool to educate others on the behaviors of an application. Read more on Making Your System Tests More Readable…

Three Reasons To Keep Your Frameworks Up To Date

Frameworks are constantly changing and evolving—especially open-source ones, which we rely heavily on at Atomic. And it’s not always easy to stay up to date.

Updates sometimes deprecate APIs or introduce new architecture patterns. These changes can require significant rework of a project, and they are expensive for customers. Nevertheless, updates are worth it. In the long run, the expense of keeping your project’s technologies up-to-date greatly outweighs the cost. Read more on Three Reasons To Keep Your Frameworks Up To Date…

How to Set Up a Rails SAML Identity Provider

Security Assertion Markup Language (SAML) is a protocol for single sign-on. SAML handles communication between a service provider (SP) and an identity provider (IdP). The identity provider acts as an authentication and identification mechanism for service providers.

In this post, I’ll walk you through setting up your Rails application as a SAML IdP. This post is not intended to take a deep dive into the SAML protocol.
Read more on How to Set Up a Rails SAML Identity Provider…

Four Steps To Maintaining a Clean Git History

Git is a very important tool. Not only does it keep a history of a project, but Git also makes it easy for a team to collaborate in a codebase. Although it’s such an important tool, it’s often under-utilized and on occasion, even neglected.

A clean Git history is easy to understand and tells a story about the project. It’s evident when features were added and how they were implemented. I’ve come to cherish a clean Git history on a project. The good news is, it’s not very difficult to keep this history clean. Read more on Four Steps To Maintaining a Clean Git History…