Skip to content

Team and Roles

canquesse edited this page Jul 29, 2026 · 2 revisions

Team and Roles

Team

GitHub Primary area (Month 1)
Can @canquesse control-plane (Java) + database schema
Simurg @Simurg41 agent-runtime (Python) + Docker/compose

Core principle: learn the same thing, do different things

This project has two goals, and both matter equally:

  1. Product — ship an actually-used open-source tool
  2. Competence — get both people to the same profile (AI Platform Engineer)

The second goal conflicts with a classic division of labor. If you say "you do Java, I'll do Python", by the end of the month you have two half engineers. So the rule is:

Learning is not divided. Implementation is divided.

That is: every month both people learn the same concept list. But that month's coding work is split in two. The part you don't implement yourself, you close by reviewing your partner's code and by the mid-month teaching session.

Three mechanisms

1. Rotation (mid-month)

In the first half of the month Can writes Java, Simurg writes Python. In the second half they swap. That way nobody gets locked into one language.

Month First half Second half
1 Can: Java+DB · Simurg: Python+Docker Can: Docker+profiling · Simurg: Java+DB
2 Can: agent loop · Simurg: RAG tool swap
3 Can: metrics · Simurg: eval set + harness swap
4 Can: queue + concurrency (Java) · Simurg: async + cache (Python) swap
5 Can: auth + rate limit · Simurg: logging + tracing swap
6 Can: README + diagram · Simurg: demo + blog joint launch

2. Mandatory cross-review

You cannot merge your own code yourself. Every PR is read and approved by the other person.

Review is not for fixing lines, it's for understanding. Rule: if you can't explain a PR as if you wrote it yourself, don't approve it. Ask about what you don't understand — asking questions is the real job of review.

3. Teaching session (around the 15th of each month, 60–90 min)

Each person picks half of that month's concepts and explains them to the other at a whiteboard, without notes. A concept you can't explain counts as not learned and is repeated until the end of the month.

Decision-making

Decision type How
Daily technical choice Whoever is doing it decides
Affects the service contract Both must approve + ADR
New dependency / technology Both must approve
Roadmap change Both must approve
Disagreement Run a small experiment, measure, look at the data. If inconclusive, pick the reversible option.

Expected effort

12–15 hours per week per person:

What Time
Learning (reading, video, experimenting) 4–5 hours
Writing code 6–7 hours
Review + pairing + meetings 2–3 hours

Clone this wiki locally