project management
Feature team models that work
Along with a number of “monolith to microservice” transitions, I’ve been a party to many “functional team to cross-functional team” transitions. I think there are some patterns and rules of thumbs that are widely applicable. The place these transitions fall down is where the definition of “cross functional” is...
Read more
Working around process bandwidth bottlenecks
For most of my first year at Cozy, the engineering team was rebuilding the application. The UX and code we had was, hmmm, not good. It wasn’t serving our customers and wasn’t maintainable in any way. We were working as fast as we could to add enough functionality to...
Read more
When advice turns out to be a mistake
I remember reading Clinton Keith’s “Agile Game Development” and getting to an anecdote about CCP Games, where I worked at the time. The following is from a Gamasutra repost of the book’s “Teams” chapter: In the fall of 2008, CCP undertook the development of its tenth expansion pack called...
Read more
What do you want next?
We are focusing on A and B, and in a month or so we’ll start focusing on C, while also keeping focus on A and B. Sound familiar? When we do prioritization at work, I insist we have a single column of priorities or coarse features. In other words,...
Read more
Automated testing shows a respect for employees
In the tech-artists.org G+ community page there was a comment on a thread about unit testing: A key factor in TA tools is the speed at which we need to deliver them, and our audience is considerably smaller than, say, engine tools code. Therefor it becomes somewhat hard to...
Read more
How do you estimate that which you’ve never done?
Have you heard about #noestimates? No? Well I’m sure you can guess what it is anyway. But reading the debates reminded me of a story. While at Game Developer’s Conference a few years ago, I was arguing about estimation with a certain project manager, who, despite having no actual...
Read more
Change should be the ally of quality
In The Beauty of Testing, Steven Sinofsky writes: …great testers understand one the cardinal rules of software engineering—- change is the enemy of quality. This is not a cardinal rule. This is a outdated and obsolete mode of thinking. Change is how you discover great UX. Change is how...
Read more
Technical debt metaphors get it so wrong
In my previous post about technical debt, I explained how modern definitions of technical debt are harmful. Now I turn my attention to equally harmful metaphors. Viktoras Makauskas made the following metaphor in a comment on my last post. This is a pretty perfect stand-in for metaphors I’ve read...
Read more
Holiday (product) shipping
This was an interesting holiday season, work-wise, for three reasons. First: My work was closed down from Dec 20th to Jan 4th (except for Customer Support and whichever developer was on firefighting duty, though that is all remote). We shipped two large products on December 17th, which was a...
Read more
More effective interviews
David Smith over at baleful.net makes some interesting points about the length of most interviews: So mathematically, you will most likely get the highest confidence interval with: 1) Resume screen, 2) Phone interview, 3) In-person interviews 1-3. From the above, this should represent about 50% of the total causes,...