Today, Part 2 of our series on the R&D process at Netmail.
Developers are busy: writing new code, unit testing, integrating, building, presenting/demo-ing the new stuff to the stakeholders, and automating. The QA Team (hidden behind another wall) breaks stuff. Bugs are logged and prioritized. Bugs preventing QA from moving forward are logged in the current sprint; less important problems are pushed to the next spring. We do as many sprints as necessary to clean up the tasks and defects to complete the release.
For larger releases, the product will then go into different testing stages: Beta and RC (Release Candidate). The feedback gathered during these phases is either re-injected into the current sprint or pushed to a next release, if the impact is too high. This ends with the final release: the GA (General Availability).
Maintenance on the releases running in the field is typically done using another process--the CPR process. Problems reported by clients are delivered using a parallel sprint called the CPR sprint, which generally ends with a Hot Patch containing the fixes. The developers very often work on the current CPR sprint at the same time as the development sprint. So if you can't accomplish many things at the same time, don’t send your resume. It’s busy at Netmail, very busy.
The Development Team holds a daily sprint meeting to talk about what’s currently being done, what are the potential show stoppers and who can help with these.
Work on the 5.3 release of Netmail was long, but we are very proud of it. It’s really a huge step in the integration of our products. This one deserved a big celebration, which brings me to tell you about Dev Days at Netmail.
Nick Stefan, VP of R&D and Admiral of the Development Team at Netmail, came up with the idea of taking a week to celebrate the 5.3 Netmail release. Some of our team are based in the United States, so we communicate a lot by phone and of course email, but we don’t often have the chance to meet face to face.
In the middle of June, the entire team came to our Montreal HQ for what we called Dev Days. Of course, with Nick around, you can't just take it easy and relax for a full week. So three of the five days were dedicated to cross training. Roland Gaspar took the lead in organizing and coordinating the event and agenda.
Members of the Development Team volunteered (or were nudged) to prepare presentations or demos on things they'd worked on and to then present the material to the other members of the team. Many technical subjects were covered but there were also higher-level presentations on how to improve process and change some work habits.
We had a visit from Eyad Saheb from the Support Team to talk about their major pain points, and he even pointed out a few GUI inconsistencies (ouch! that hurt). Our CTO, Frederic Bourget, talked about how the product is presented to clients and his vision for the future of the product.
The fourth day was dedicated to an internal competition called the Coding Contest. Nick and Roland identified a list of features in our backlog. Some features were assigned to them. The Development Team also picked features and tried to resolve them during the day. The winner was the person who accumulated the most points. Results were presented Friday morning and the winners were the girls from our QA Team who paired up (it’s still unclear if "pairing up" was legal or not) and were able to close tons of tasks related to test automation.
But working was not all we did. On Thursday night, we all went to the Cirque du Soleil Kurios show (which was really good by the way...)
I’ll let Roland Gaspar sum up our recent Dev Days:
"We try to bring the Dev Team together every quarter, for planning purposes, scoping, designing big future features. Since merging the teams, more and more, people work on things they didn't write, didn't have design overviews on; the need for a series of deep-dive sessions was clear. Bringing the whole team together is fun, but there is a danger, these guys have opinions! In three days, there was enough discussion for a week, and schedules had to be updated regularly; there was such interest from the team about all the presentations that overflow sessions will need to be considered!"