Manifesting Agile at Big Nerd Ranch
Since its inception, Big Nerd Ranch has fully embraced the principles, practices, and procedures derived from the Agile Manifesto and its resulting methodologies. By design, we do not adhere prescriptively to one specific methodology (i.e. Scrum, Kanban, Extreme Programming, Scaled Agile Framework, etc). Instead, we believe in maximizing the value of practices and processes of those various methodologies by mixing and matching them to fit our daily needs. We do this because we place the greatest importance on the pillars of the Agile Manifesto, rather than solely on prescriptive models of a specific methodology. We eschew formulas for intrinsic motivation, action, and collaboration. A secondary motto that drives our culture is “Bias towards action.” Transparency, dependability, and proactivity are dispositions we aspire to in combating fear, idleness, and obscurity.
Individuals and interactions over processes and tools
We understand the critical importance of working closely together. We do this by prioritizing collaboration and communication as frequently as possible–not just within the product teams, but especially with clients and stakeholders. We promote frequent and recurring practices like daily standups, bi-weekly reviews/demos, and monthly retrospectives. We value best practices like pair programming, Agile design and development collaboration, and user research. Product teams will proactively schedule one-off calls with clients to pair on determining sustainable solutions as often as necessary. In exercising these habits, we endeavor to deliver high-quality solutions the right way, on the first attempt.
Working software over comprehensive documentation
We value the practices of continuous integration and continuous deployment. We drive our product development habits towards delivering valuable builds on a highly frequent basis. We do so by promoting Agile design thinking and execution, iterating repeatedly on the product’s user interface and user interaction with our clients and product teams until designs prove valuable. Our developers practice the habit of keeping their branches small, to maintain sustainability and momentum when delivering specific features. As a result, their pull requests (PR) are easily digestible and reviewable by their teammates. This allows us to merge multiple PRs on a daily basis. It is, therefore, not unusual for us to deliver shippable builds on a weekly basis.
Customer collaboration over contract negotiation
We tell our clients that we require their frequent and collaborative partnership. As mentioned above, we will bias towards bringing our clients into critical decision points as often as necessary to ensure that they know exactly what they’re getting. We see ourselves as stewards of our clients’ time, money, and value-generating products. And, thus, we let them down if we do not consistently collaborate with them on critical design and development decisions. We understand that critical decisions impact revenue potential, and want to ensure that we are enabling our clients to realize as much success and potential as possible.
Responding to change over following a plan
We embrace the fact that requirements change because customer behaviors, segments, and markets change. Our clients partner with us because we prove that we’re reliable partners that enable the freedom of our clients to make changes as their markets change–not contractors that are given fixed requirements thrown over a 10ft wall. Being responsive, adaptive, and flexible are necessary and vital characteristics of any modern company that builds software in a rapidly changing business landscape. It is for this reason that Big Nerd Ranch wishes to lead by example.
In summary, while we accept that good processes and comprehensive documentation are necessary and important, collaborative communication and being adaptive to the changing needs of our clients are foundational to our way of building digital products.