{"id":322,"date":"2026-09-21T13:57:06","date_gmt":"2026-09-21T08:27:06","guid":{"rendered":"https:\/\/tierones.io\/blog\/?p=322"},"modified":"2026-09-21T13:57:07","modified_gmt":"2026-09-21T08:27:07","slug":"how-to-read-contest-rating","status":"publish","type":"post","link":"https:\/\/tierones.io\/blog\/how-to-read-contest-rating\/","title":{"rendered":"Microsoft&#8217;s Own Developers Spend 11% of the Week Coding. That Is the Slice a Contest Rating Measures."},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">A survey of <strong>484 software developers at Microsoft<\/strong>, published at ICSE-SEIP 2025 and given the conference&#8217;s Distinguished Paper Award, measured where an actual workweek goes. Coding came out at roughly <strong>11%<\/strong> \u2014 behind communication and meetings at about 12%, ahead of debugging at about 9%, architecture at about 6% and code review at about 5%. Asked for their ideal week, the same developers wanted coding at around 20% (<a href=\"https:\/\/arxiv.org\/abs\/2502.15287\" rel=\"nofollow noopener\" target=\"_blank\">arXiv:2502.15287<\/a>). Keep that number in mind the next time a candidate&#8217;s Codeforces rating decides your shortlist. The rating is a genuine measurement. It is a measurement of the 11%.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Key takeaways<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Coding is about 11% of a real developer&#8217;s week. A contest rating measures that slice precisely and says nothing about the other 89%.<\/li>\n\n\n\n<li>It is nonetheless one of the few candidate signals that got <em>harder<\/em> to fake in the AI era \u2014 but only the rated-contest kind, not solved counts or certificates.<\/li>\n\n\n\n<li>Use it as a floor, never as a ranking. A 200-point gap between two candidates should change nothing about your decision.<\/li>\n\n\n\n<li>Read the history, not the peak: contest count, consistency and recency tell you more than the single number on the profile.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Why the rating survived when other signals collapsed<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Almost every candidate artefact got cheaper to produce in the last two years. A polished README, an architecture diagram, a tidy commit history, a portfolio site \u2014 an afternoon each, with help. Against that backdrop, a rated contest history is unusual: it is timed, live, scored against thousands of simultaneous entrants, and accumulated over months. You cannot retroactively acquire one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is measurement behind that intuition. Billah, Roy, Codabux and Roy tested large language models across <strong>98 LeetCode problems and 126 Codeforces problems in 15 categories<\/strong>, plus nine online contests and two certification tests (<a href=\"https:\/\/arxiv.org\/abs\/2409.05824\" rel=\"nofollow noopener\" target=\"_blank\">arXiv:2409.05824<\/a>). ChatGPT succeeded on <strong>71.43% of the LeetCode set<\/strong> and did well on the archived problems and the certification tests \u2014 outperforming human users on time and memory efficiency \u2014 but the models struggled in live virtual contests, particularly the harder Codeforces rounds.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That result draws the line you need. A LeetCode solved-problem count, a streak, or a platform certificate sits on the side of the line that a model handles well. A rating earned in rated contests over many months sits on the other. Treat these as three different artefacts with three different weights, not as &#8220;competitive programming&#8221; in general.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What it predicts, in the language of selection research<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Sackett, Zhang, Berry and Lievens re-analysed the meta-analytic validity estimates for personnel selection in 2022, correcting for systematic overcorrection for range restriction. Their revised figures, <a href=\"https:\/\/www.siop.org\/tip-article\/is-cognitive-ability-the-best-predictor-of-job-performance-new-research-says-its-time-to-think-again\/\" rel=\"nofollow noopener\" target=\"_blank\">summarised by SIOP<\/a>, put structured interviews at <strong>.42<\/strong>, job-knowledge tests at .40, empirically keyed biodata at .38, work samples at .33 and cognitive-ability tests at <strong>.31<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">No one has published a validity coefficient for a Codeforces rating, and this post is not going to invent one. But the analogy is clear enough to be useful: a rating is a timed, abstract problem-solving test, which puts it closest to the cognitive-ability and job-knowledge end of that list \u2014 the end that predicts <em>less<\/em> than a structured conversation about real work. Academic interest in the link is real and current; a 2025 paper built a Random Forest classifier on Codeforces API data to sort users into four employability tiers (<a href=\"https:\/\/arxiv.org\/abs\/2508.00772\" rel=\"nofollow noopener\" target=\"_blank\">arXiv:2508.00772<\/a>). That is a prediction about hiring outcomes, though \u2014 which company calls the person \u2014 and hiring outcomes are not the same thing as job performance.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/tierones.io\/blog\/wp-content\/uploads\/2026\/09\/how-to-read-contest-rating-slice-opt-1024x576.jpg\" alt=\"how-to-read-contest-rating-slice\" class=\"wp-image-327\" srcset=\"https:\/\/tierones.io\/blog\/wp-content\/uploads\/2026\/09\/how-to-read-contest-rating-slice-opt-1024x576.jpg 1024w, https:\/\/tierones.io\/blog\/wp-content\/uploads\/2026\/09\/how-to-read-contest-rating-slice-opt-300x169.jpg 300w, https:\/\/tierones.io\/blog\/wp-content\/uploads\/2026\/09\/how-to-read-contest-rating-slice-opt-768x432.jpg 768w, https:\/\/tierones.io\/blog\/wp-content\/uploads\/2026\/09\/how-to-read-contest-rating-slice-opt-1536x864.jpg 1536w, https:\/\/tierones.io\/blog\/wp-content\/uploads\/2026\/09\/how-to-read-contest-rating-slice-opt.jpg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">The trap: a precise number crowding out a relevant one<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The reason founders over-weight ratings is not that they believe in them. It is that a rating is a number, available in ten seconds, comparable across candidates \u2014 and everything else on the shortlist is prose. Under time pressure, precision beats relevance every time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Watch what that costs you in context. The Microsoft study&#8217;s breakdown is a list of the things your intern will actually do: write and read messages, sit in short meetings, debug someone else&#8217;s code, review a pull request, argue about an approach. A contest rating is silent on all of it. It also cannot tell you whether the person asks when they are stuck, whether they can say &#8220;I do not know&#8221;, or whether they will still be responsive in week five \u2014 the things that decide whether a six-week internship produces anything. We argued the evaluation side of this in <a href=\"https:\/\/tierones.io\/blog\/intern-evaluation-decision-rubric\/\">write the intern&#8217;s rubric before week one<\/a>, and the cheapest live check in <a href=\"https:\/\/tierones.io\/blog\/project-walkthrough-interview-students\/\">the fix runs 2.5 minutes<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is a second trap, specific to Indian Tier-1 campuses. Contest culture is strong at some institutes and near-absent at others, and it is strongest where seniors run it as a club. A student with no rating at an institute where nobody competes has told you nothing about themselves; they have told you something about their campus. Absence of a rating is not evidence.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to actually use a rating<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Decide the threshold before you look at anyone.<\/strong> Pick a level that means &#8220;can write correct code under time pressure&#8221; for the work you have, write it down, and treat everyone above it as equal. This is the same discipline as any rubric: criteria first, candidates second.<\/li>\n\n\n\n<li><strong>Check that it comes from rated contests.<\/strong> Open the contest history. Many rounds over many months is the signal. A solved-problem count, a streak badge, or a platform certificate is a different and much weaker artefact.<\/li>\n\n\n\n<li><strong>Read the shape, not the peak.<\/strong> Steady participation across two years says more than a single high round. A profile that stopped eighteen months ago is a fact about the past.<\/li>\n\n\n\n<li><strong>Never compare across platforms.<\/strong> Ratings on different sites are different scales with different populations. Converting between them is guesswork dressed as arithmetic.<\/li>\n\n\n\n<li><strong>Do not re-test what the rating already proved.<\/strong> If you have accepted the rating, an algorithm puzzle in your interview is a duplicate measurement. Spend that half hour on a walkthrough of code the candidate wrote instead.<\/li>\n\n\n\n<li><strong>Ask one question that uses it.<\/strong> &#8220;Tell me about a contest problem you could not solve, and what you did next.&#8221; The rating tells you they can solve things; this tells you what they do when they cannot.<\/li>\n\n\n\n<li><strong>Weight shipped work above it.<\/strong> A deployed project with real users, a merged pull request in a repository other people depend on, a code walkthrough that survives questions \u2014 each of those is closer to the job than a rating is.<\/li>\n\n\n\n<li><strong>Treat a missing rating as missing data.<\/strong> Not as a negative. Ask what they built instead, and judge that.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">A floor, then evidence<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The honest summary is that a contest rating is one of the better cheap filters available to a small team, and a poor basis for a decision. It costs you ten seconds, it is genuinely difficult to fabricate, and it reliably screens out candidates who cannot write working code quickly. Then it runs out of things to tell you, and everything that decides whether the internship works \u2014 communication, judgment, follow-through, what happens when the plan fails \u2014 has to come from somewhere else.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That is the model Tierones runs on: students from IITs, NITs and IIITs matched to startups on commits, ratings, shipped projects and a code walkthrough rather than a CV, so the first conversation starts from evidence you can check. Stipends stay yours to set \u2014 we do not set, suggest or cap them. The student-facing companion to this post is <a href=\"https:\/\/tierones.io\/blog\/competitive-programming-rating-career\/\">what your Codeforces rating is actually worth<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Is a Codeforces rating a good hiring signal?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">It is a real signal for a narrow thing, and unusually hard to fake, which makes it a good floor and a bad ranking. A rated contest is timed, live and scored against thousands of entrants, so a sustained rating is not something assembled the week before applying. What it measures is algorithmic problem-solving under time pressure \u2014 nearer a job-knowledge test than a sample of the actual job.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Should I rank candidates by their contest rating?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">No \u2014 set a threshold and stop looking at it. Sackett and colleagues&#8217; 2022 re-analysis put structured interviews at .42 and cognitive-ability tests at .31, and a contest rating sits nearer the bottom of that list than the top. Ranking two candidates by a few hundred points substitutes a precise number for a relevant one.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can candidates use AI to inflate their competitive programming profile?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">It depends which artefact you are reading. A 2024 study across 98 LeetCode and 126 Codeforces problems found ChatGPT succeeded on 71.43% of the LeetCode set and handled certification tests well, but struggled in live virtual contests, especially harder Codeforces rounds. So a solved count or a certificate carries far less weight than a rating built in rated contests over time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Tierones matches students from IITs, NITs and IIITs with startups that hire on proof of work. <a href=\"https:\/\/tierones.io\/employers\">Tell us what you need<\/a> \u2014 we&#8217;ll show you proof, not CVs. Or write to <a href=\"mailto:hire@tierones.io\">hire@tierones.io<\/a>.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A study of 484 Microsoft developers found coding at 11% of the actual workweek. Here&#8217;s what a Codeforces rating does and doesn&#8217;t tell a startup founder.<\/p>\n","protected":false},"author":1,"featured_media":326,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[106,213,215,216,214,57,137,136],"class_list":["post-322","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-for-employers","tag-codeforces","tag-competitive-programming-rating-hiring","tag-evaluating-developers","tag-indian-engineering-students","tag-intern-hiring","tag-remote-interns","tag-startup-hiring","tag-technical-screening"],"_links":{"self":[{"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/posts\/322","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/comments?post=322"}],"version-history":[{"count":1,"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/posts\/322\/revisions"}],"predecessor-version":[{"id":328,"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/posts\/322\/revisions\/328"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/media\/326"}],"wp:attachment":[{"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/media?parent=322"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/categories?post=322"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tierones.io\/blog\/wp-json\/wp\/v2\/tags?post=322"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}