Designing and delivering software is not an easy task. Over the years, project management methodologies, techniques, and creative tools have emerged to help software teams manage projects and avoid failure. We at Rocket Matter utilize Agile Project Management, which we’ve found to be highly efficient and effective for error-reduction.
ILTA (International Legal Technology Association) published the following cross-industry musings of ours in the March 2009 issue of their excellent Peer to Peer magazine. A pdf of the print copy can be obtained here.
1) Hold a Daily Standup
Every morning our team meets for fifteen minutes. We stand up, which helps keep the meeting short. Each person on the team, whether they’re responsible for finances, sales, or engineering, shares the following: 1. What they worked on yesterday. 2. What they’re doing today. 3. What is standing in their way.
Benefit: You quickly get a sense of who’s making an impact, who’s not, and what obstacles are impacting business.
2) Embrace a Flat Hierarchy
Google famously has a maximum two levels of management between any employee and the top executive. This way, the pecking order is avoided as much as possible.
Benefit: A flat hierarchy encourages accountability, a free-flow of ideas, and candor, which ultimately prevents mistakes and allows employees to voice critical business ideas.
3) Go Paperless
Though an increasing number of law firms are moving in this direction, many still have considerable filing processes. Paperless is common in software, and electronic document storage is favored over printouts of documentation.
Benefit: Less time is spent filing and retrieving information. Also, less money is spent on paper, printers, and toner.
4) Standardize Repeatable Processes
Software production has many tasks that are often repeated such as configuring servers or responding to support tickets. These processes are standardized, so they are done the same way each time.
Benefit: No time and energy is wasted reinventing processes. Fewer errors occur and there’s less confusion among employees about how they should perform certain tasks.
5) Use Online Collaborative Tools
From project management to CRM systems, software companies can manage operations from any location via online tools. Such systems are now available to law firms. They allow users to share client and matter information, communicate messages, and exchange notes from any location.
Benefit: The whole team can communicate and work easily from diverse locations.
6) Conduct Drafting Reviews
Senior software engineers often meet with junior engineers to discuss their work in a process called a Code Review. The goal is mentorship and increased consistency. Legal documents could be reviewed in a similar fashion.
Benefit: Less time is spent correcting work of less-experienced employees. In turn, they produce higher quality, less error-prone work.
7) Consider What to Start, Stop, and Continue
Every two weeks or so, Agile software companies conduct a 30-minute retrospective meeting. The team answers the following questions: “What should we start doing? What should we stop doing? What should we continue doing?”
Benefit: Business processes are continually improved, resulting in increased efficiency and fewer mistakes.
8 ) Encourage Questions (Even if They’re “Stupid”)
When someone makes a mistake in software, the results can be catastrophic. For this reason, it’s critical that no misunderstandings exist when an engineer is writing code. Individuals are encouraged to ask any question for clarification.
Benefit: Communicative openness saves time and avoids mistakes. Emergencies can be preempted.
9) Get Acquainted With Internet Marketing
Consumers increasingly search the Web to find answers. In software marketing, search engine optimization (SEO) and online marketing is often a primary distribution channel.
Benefit: A firm’s increased online presence creates a large and inexpensive distribution channel with strong return on investment.
10) Get a Foosball Table
Like law, software development can be a stressful and mentally challenging environment. Occasional breaks and fun are encouraged.
Benefit: Play promotes team building, recharges batteries, boosts morale and fosters creativity. It also keeps employees happy, which is the cornerstone to any successful company.