From a code change to an effort estimate
UpCore treats a completed task and its merge request as observable work. Its algorithm converts the change into estimated hours using language, project complexity, whether code sits in the core or at the edge, debugging, testing, legacy constraints, and other factors. The estimate is compared with reported time and previous tasks. One task is insufficient: roughly three months of history supports a grade and a stable trend.
The team first tried large language models but moved away because estimates varied too much. Ivan describes the current foundation as deterministic mathematics and claims about 80% agreement with experts; one internal estimate comparison reached 85%. These are product claims, not independent validation: no study design, sample, or confidence interval is provided. Treat the output as a signal pointing to a task worth reviewing, not an established truth about a person.
A metric sees code, not the whole job
The system tries to account for architecture, learning, reopened tasks, requirement clarification, and AI-assisted development. The demo shows merge-request history, technologies, inferred grade, effectiveness, and trends. It can audit historical data and run inside a client's security perimeter. DEX's example shows higher effectiveness for AI-assisted tasks, but Alexander distinguishes verified engineering with requirements and architectural control from unconstrained vibe coding.
The boundary appears where code is only one output. A team lead may write little while handling architecture, reviews, hiring, and team development; an engineer may prevent an unnecessary change. UpCore adds indirect and team-level signals, yet business value, decision quality, and product behavior remain above code. Bottom-up measurement needs a top-down view, or local productivity can diverge from business needs.
Keep a diagnostic signal from becoming a verdict
Every visible metric invites optimization through split changes, added complexity, convenient tasks, or influenced estimates. Ivan says more than fifty factors and a long history make gaming harder, but agrees that a manager must interpret the result. A dashboard can prompt “why did this trend change?”, a retrospective, or a development plan. It becomes dangerous when one number controls pay, ranking, or dismissal without context.
The Moneyball analogy reveals the different emphases. For Ivan, statistics reduce observer subjectivity; for Alexander, they help compose a team whose strengths complete the system. Both work if nobody seeks one magic number. Managers must connect code signals with teamwork, product impact, and trust. Ivan sees UpCore's next step in learning as well as control: improving requirements, AI adoption, and a verifiable engineering process.
What to take away
- 01Use code-based estimates as diagnostic prompts for a conversation, not as automatic judgments about people.
- 02Look for stable trends across many tasks and explicitly account for architecture, debugging, requirements, legacy constraints, and role differences.
- 03Connect individual change metrics to team and product outcomes because local speed does not prove business value.
- 04Before adoption, define data access, an appeal path, and which employment decisions may never rely on one metric.
Sources
- Local automatic captions for the recording
- YouTube live recording
- VK Video live recording
- Podster audio edition
- Yandex Music audio edition