GoGo · Bytes catalog

Screen Go candidates on real starter repos

43 short Go tasks, each shipping with a public test file and a language-specific runner. Candidates work in their own style; reviewers see how the code actually hangs together.

Starter
20
Standard
19
Advanced
4
Catalog
43 Go bytes
Page 1 of 2
Access Badge
Featured
GoGoStarter~2h

Access Badge

Manage badge factory settings. When an access badge is issued, it starts out unnamed.

access_badge.go
access_badge_test.go
bonus_test.go
Open byte →
Alert Priority
GoGo
Standard~2h
Alert Priority

Your team maintains an internal alert triage service. Each incoming alert carries five severity tags — tokens composed of a level indicator and a category code (e.g. 4♤ 5♡ 7♧ 8♢ J♧). The ranking rules for these tag sets follow standard poker hand rankings.

alert_priority.go
alert_priority_test.go
+1 more files
Billing Cycle
GoGo
Starter~2h
Billing Cycle

An internal billing system assigns sequential period numbers to billing cycles. Some periods are designated as extended — they receive an extra processing day for reconciliation.

billing_cycle.go
billing_cycle_test.go
+1 more files
Bundle Pricing
GoGo
Advanced~3h
Bundle Pricing

An online retailer sells five distinct product SKUs. Each item costs $8 at full price. To encourage bundle purchases, the retailer offers tiered discounts when a customer buys distinct items together:

bundle_pricing.go
bundle_pricing_test.go
+1 more files
Codec Bridge
GoGo
Starter~2h
Codec Bridge

Convert an encoded payload, represented as a sequence of symbol values in one radix, to any other radix.

cases_test.go
codec_bridge.go
+1 more files
Cohort Roster
GoGo
Standard~2h
Cohort Roster

You are building a roster system for a developer training academy. Participants are assigned to numbered cohorts based on their experience track. The program coordinator needs to view participants grouped by cohort, with each cohort's list sorted alphabeticall…

cohort_roster.go
cohort_roster_test.go
+1 more files
Coin Combos
GoGo
Standard~2h
Coin Combos

Correctly determine the fewest number of coins needed to make an exact target amount from a supplied denomination list.

coin_combos.go
coin_combos_cases_test.go
+1 more files
Command Triplets
GoGo
Starter~2h
Command Triplets

You are building a decoder for a legacy industrial robot controller. The controller receives a continuous stream of 3-character instruction codes. Each triplet maps to a named operation:

command_triplets.go
command_triplets_cases_test.go
+1 more files
Commit Jargon
GoGo
Standard~3h
Commit Jargon

Implement a function that encodes plain English text into commit jargon. Your team uses an internal shorthand for obfuscating draft commit messages before they reach the shared log. The encoding follows a small set of deterministic rules applied word-by-word.

cases_test.go
commit_jargon.go
+1 more files
Config Drift
GoGo
Starter~2h
Config Drift

You are working on a small internal tool that compares two configuration snapshots.

cases_test.go
config_diff.go
+1 more files
Contact Cleanup
GoGo
Starter~2h
Contact Cleanup

You are cleaning imported contact records before they are saved into a CRM. Each record includes a freeform phone field entered by a human, so the data can contain spaces, dots, parentheses, hyphens, and an optional leading country code of 1.

cases_test.go
contact_cleanup.go
+1 more files
Countdown Carol
GoGo
Standard~2h
Countdown Carol

Output the lyrics to 'The Twelve Days of Christmas'. ``text On the first day of Christmas my true love gave to me: a Partridge in a Pear Tree.

go.mod
twelve_days.go
+1 more files
Delivery Zones
GoGo
Starter~2h
Delivery Zones

Classify a delivery drop-off location into the correct fee tier based on its distance from the warehouse.

cases_test.go
delivery_zones.go
+1 more files
Deploy Window
GoGo
Starter~2h
Deploy Window

Calculate the date of scheduled deployment windows. Teams often schedule recurring deployment windows on a specific day of the week each month. In this exercise, you will take a description of a deployment window date and return the actual date it falls on.

cases_test.go
deploy_window.go
+1 more files
Expense Report
GoGo
Standard~2h
Expense Report

Refactor an expense report formatter. The expense report exercise is a refactoring exercise. There is code that prints a nicely formatted expense report, given a locale (American or Dutch) and a currency (US dollar or euro).

expense_report.go
expense_report_test.go
+1 more files
Flag Sequence
GoGo
Starter~2h
Flag Sequence

A maritime signal station transmits messages using a sequence of signal flags. A numeric transmission code determines which flags to raise and in what order.

cases_test.go
flag_sequence.go
+1 more files
Grid Crossovers
GoGo
Standard~2h
Grid Crossovers

Identify grid crossovers in an operations matrix. A grid crossover is a cell whose value is greater than or equal to every value in its row and less than or equal to every value in its column.

go.mod
grid_crossovers.go
+1 more files
Grid Hunt
GoGo
Standard~2h
Grid Hunt

In a grid hunt challenge you scan a rectangular field of characters to locate hidden target strings.

cases_test.go
go.mod
+1 more files
Hailstone Cascade
GoGo
Starter~2h
Hailstone Cascade

Implement a Steps function that computes how many cascade steps a hailstone particle takes to reach unit mass.

cases_test.go
go.mod
+1 more files
Help Desk Bot
GoGo
Starter~2h
Help Desk Bot

Implement the response logic for a basic help-desk chatbot. The bot handles incoming support messages and replies with one of five canned responses based on the message content.

cases_test.go
go.mod
+1 more files
Incident Chain
GoGo
Standard~2h
Incident Chain

An internal post-mortem tool reconstructs incident chains. Each step in the chain describes an event and how it caused the next, building a cumulative narrative from the root cause forward.

go.mod
incident_chain.go
+1 more files
Invoice Words
GoGo
Advanced~3h
Invoice Words

An invoicing system needs to print amounts in words on official documents. Given an integer from 0 to 999,999,999,999, return its English representation.

cases_test.go
go.mod
+1 more files
League Table
GoGo
Starter~2h
League Table

Compile a standings table from match results for a small sports league. Given a list of match results, produce a formatted standings table. Each result line contains two team names and an outcome, separated by semicolons:

go.mod
league_table.go
+1 more files
Ledger Account
GoGo
Standard~2h
Ledger Account

Simulate a ledger account supporting opening, closing, withdrawals, and deposits of money. Watch out for concurrent transactions!

go.mod
ledger_account.go
+1 more files
Meter Reader
GoGo
Advanced~3h
Meter Reader

Read the digits shown on an industrial meter's segment display. Each digit is rendered as a 3-column x 4-row pattern of pipes (|), underscores (_), and spaces. Parse these patterns and return the corresponding numeric string.

go.mod
meter_reader.go
+1 more files
Metric Network
GoGo
Advanced~3h
Metric Network

Implement a metric dependency network. In monitoring systems, metrics often depend on other metrics. A source metric is collected directly (e.g. CPU usage), while a derived metric is computed from one or more upstream metrics (e.g.

go.mod
interfaces.go
+1 more files
Parcel Verifier
GoGo
Starter~2h
Parcel Verifier

The parcel reference checksum process is used to validate operational parcel identifiers. These normally contain dashes and look like: 3-598-21508-8

cases_test.go
go.mod
+1 more files
Planter Rows
GoGo
Starter~2h
Planter Rows

Given a layout diagram, determine which plants belong to each tenant in a shared rooftop planter.

go.mod
planter_rows.go
+1 more files
Priority Index
GoGo
Starter~2h
Priority Index

You are cleaning up a legacy priority table used by an internal routing tool. The old format groups item codes by integer priority. The new format needs a direct lookup from item code to priority.

go.mod
priority_index.go
+1 more files
Release Cadence
GoGo
Starter~2h
Release Cadence

A product team tracks how quickly a release ages across several cadence tiers. Given an age in seconds, calculate how old that release would be on:

go.mod
release_cadence.go
+1 more files