I don't know if this is interesting to anyone, but I ended up writing down our messy, unofficial process in perhaps too much boring detail.
1/n
Primarily these come either directly from user requests, or from insights that we get from watching people work.
2/n
Maybe a designer is particularly passionate about something and wants to spend some time thinking about how something could be better. Could also be a PM or an engineer.
3/n
4/n
Roadmapping is a black art, quite frankly, and it involves some combination of synthesizing customer feedback, reading the competitive landscape, and lots of internal discussion.
5/n
This step is surprisingly important to keep a feature from going off the rails.
6/n
We try to identify the whole team from the beginning so they can be included in all discussions.
7/n
8/n
9/n
During this phase, we try to keep tabs on how the exploration is going via design crit + team check-in meetings.
10/n
The model is the most important output of this phase.
11/n
12/n
13/n
Engineering tasks are tracked in Asana, and design tasks are mostly untracked.
14/n
Designs may change during this time based on engineering needs, or based on designers having new insights.
15/n
16/n
17/n
For larger features, it almost certainly won't feel right immediately.
18/n
This can take a few weeks or more for a big feature.
We'll tweak and tweak a feature it until we like it.
19/n
20/n
21/n
Compared to most teams, I would say we spend more time on exploration and we allow for more design changes during development.
22/n
23/n
Nowadays, I would say that I see less wasted work although it's *still* the case that some things can't be figured out until you play with the finished code.
24/n
25/25
The infra team, in contrast, has very different requirements, and operates differently.