I can’t tell you how many companies I’ve seen, of all sizes, who start out with an innovative mission to change the world. They acquire a budget, rally a team together, and get to work for months or years with a grand vision. As time goes on, the scope of the project evolves and grows as complex designs are handed to software engineers from on high. Pressure comes down on the software engineers to pick up the pace, and the scope continues to grow. After all, we’ve waited so long to release this product, what’s another few weeks? But the longer we wait, the more funds are expended, and the more teams become stressed.
In teams that claim to be agile, sprint meetings become focused on point velocity and “requirements,” rather than actual user stories. Tasks are assigned with very little understanding of the big picture. Someone argues that scrum points should be associated with hours, and someone else says days. In the end, both arguments prove equally worthless as software engineers begin to feel that pointing is just a mechanism for micromanaging how much they accomplished in a week.
Finally the product is released! But virtually no one cares. Customers do not emerge. Frantically, every failure becomes someone else’s fault, every success the result of one’s own work.
“Let’s never do that again,” we say. But how do we avoid it?
Concierge Auctions, an online luxury real estate marketplace founded by Laura Brady, was created in order to better facilitate the auctioning of elite properties around the world. Our purpose has always been to solve problems and make processes easier, faster, and better, and that requires a team culture that operates efficiently and with purpose. Here are the cornerstones of how Concierge Auctions innovated on our own process and built a profitable online real estate marketplace with over $1 billion in sales.
1. Abolish all waterfall processes, especially in agile teams.
If you claim to be agile, design and development must run parallel. The waterfall process assumes that the end product is clearly visible from the beginning and that individual tasks can be neatly checked off and put to the side once they’re completed. This misses the point, which is that each step must be done collaboratively, with attention paid to how it impacts other aspects of the larger process. Big design up front is actually waterfall within agile. It shuts down innovation and strategic thinking from software engineers and forces them to spend time on wasteful, arbitrary design decisions. A true agile system leaves room not just for collaboration, but for responding to changes in real time. This in turn saves time, money, and a lot of headaches.
2. Use a Build-Measure-Learn cycle.
Validated learning is the lifeblood of every successful product. It helps us avoid large investments in products that people don’t want. Avoid damaging disruptions by building a minimum viable product as quickly as you can that you can put in front of a customer (internal or external) for feedback. This is extremely important for preventing all of the waste that goes into creating products that consumers don’t want.
3. Death to product backlogs!
No project exists in a vacuum. Product backlogs put too much focus on individual tasks without leaving room for the nuances of a collaborative process. User story mapping is a far superior way to visually map the features necessary for a product to be successful, and to involve customers and stakeholders in creating a successful product vision.
4. Stories, not tasks.
Telling someone to do something may end up with a task getting done, but will it be done in the best way possible? Everyone in our business is urged to think strategically about what we are doing, who we are doing it for, and why we are doing it. During our sprint meetings, we point to the complexity of stories and the business problems we are trying to solve. We do this rather than prescribing a particular solution to be carried out as a task from on high. This instills a sense of responsibility in our team members, and encourages everyone to work together toward achieving big picture goals.
5. Build cross-functional teams.
Treat people as entrepreneurs, not automatons to be handed tasks. The traditional tech/marketing/sales dichotomy breeds unhealthy company cultures, with individuals across all teams becoming siloed and unable to think strategically about business problems. Every end product is composed of the cumulative work of each team, so why should they function separately?
6. Celebrate every MVP.
Every piece of validated learning, even if it identifies a failure, is necessary in disruptive organizations. Those who are afraid to fail—and to be punished for that failure—will never take the leap of faith necessary to try something new. And what is the incentive to do great work if nobody is even going to acknowledge it? We make sure our employees know they have the freedom to innovate and that their innovations will be recognized.
7. Trust and ownership, not command and control.
Treat people with dignity and respect. Never micro-manage. Give people space to solve problems you didn’t know the business had. Simply assigning out tasks isn’t enough to build accountability, and you can’t expect employees to take pride in the work they produce if you’re not giving them room to grow. At Concierge Auctions, we give all of our software engineers 10% of their time to work on experimental projects, which are presented at the end of the month. Successful projects become official projects of the organization.
To build healthy cultures in today’s world, we need to enable everyone to think strategically, to be truly agile, and to work in tiny iterations that allow us to learn in a living way. Instead of gauging how much code a person wrote or some other arbitrary metric, let’s gauge how much all of us contributed to solving important problems.
Jacob Cantele is the chief technology officer at Concierge Auctions, a job that goes far beyond just managing the website. Jacob is a systems architect and digital media expert with a strong interest in Agile processes, inbound marketing, and information technology. Aside from his creative talents, Jacob successfully oversees Concierge Auction’s team of developers.
Connect with Jacob on: LinkedIn
- ASP.NET Interview Questions: Tips for Hiring ASP.NET Developers - October 6, 2017
- What is HockeyApp? How It Works, Key Features, and More - October 1, 2017
- PowerShell Commands Every Developer Should Know: 50+ Cmdlets for Getting Things Done, Monitoring Performance, Debugging - September 21, 2017
- What is Agile Methodology? How It Works, Best Practices, Tools - September 17, 2017
- What Are Software Metrics and How Can You Track Them? - September 16, 2017