First commit
This commit is contained in:
63
README.md
Normal file
63
README.md
Normal file
@ -0,0 +1,63 @@
|
||||
# Omukk — Software Engineer Work Sample
|
||||
|
||||
Welcome! This is a small, time-boxed work sample made of **four independent
|
||||
parts**. It is not a puzzle hunt and there are no algorithm brainteasers —
|
||||
each part looks like a slice of ordinary engineering work.
|
||||
|
||||
## Ground rules
|
||||
|
||||
- **Time budget: about 1-1.5 hour total.** It is fine to leave things
|
||||
imperfect. If you run out of time, write down what you would do next in
|
||||
`NOTES.md` — that counts as part of your submission.
|
||||
- **Use your normal tools.** AI assistants (Claude, Copilot, ChatGPT, etc.)
|
||||
are explicitly allowed, the same way they would be on the job.
|
||||
- **Work in this repository.** `git init` and commit as you go — small
|
||||
commits with honest messages. The commit history is part of your
|
||||
submission.
|
||||
- **Don't modify the test suites.** Fix code, not tests.
|
||||
- **`NOTES.md` is yours.** Decisions, observations, anything you would raise
|
||||
with a teammate at work — write it there. We read it carefully.
|
||||
- If anything in this repository seems wrong, surprising, or contradictory,
|
||||
treat it the way you would at work: make a call and document it.
|
||||
|
||||
## The parts
|
||||
|
||||
Do them in order. Each part has its own README with the actual task.
|
||||
|
||||
| Part | Directory | Language | What it is |
|
||||
|------|-----------|----------|------------|
|
||||
| 1 | `part1-pricing/` | Python | Implement a billing rule against an existing test suite |
|
||||
| 2 | `part2-logstats/` | Python | Debug a small CLI tool until its tests pass |
|
||||
| 3 | `part3-taskcli/` | Go | Fix three failing tests in a language you may not know |
|
||||
| 4 | `part4-debrief/` | — | A short written debrief (no code) |
|
||||
|
||||
Several test suites **fail out of the box** — that is the starting state, not
|
||||
a packaging mistake.
|
||||
|
||||
## Running things
|
||||
|
||||
Python parts (from inside the part's directory):
|
||||
|
||||
```bash
|
||||
pip install -e ".[dev]" # or: uv run --extra dev python -m pytest
|
||||
python -m pytest
|
||||
```
|
||||
|
||||
Go part (from inside `part3-taskcli/`):
|
||||
|
||||
```bash
|
||||
go test ./...
|
||||
```
|
||||
|
||||
## Submitting
|
||||
|
||||
1. Zip this whole folder, including the `.git` directory.
|
||||
2. Upload the zip to a Google Drive folder and make the folder publicly
|
||||
viewable ("Anyone with the link can view").
|
||||
3. Submit the folder link through the form linked in your email.
|
||||
|
||||
Before you zip, make sure `NOTES.md`, `part3-taskcli/WRITEUP.md`, and
|
||||
`part4-debrief/DEBRIEF.md` reflect your final state of mind, not your first.
|
||||
|
||||
Good luck — and remember, we are more interested in *how you decide* than in
|
||||
how much you type.
|
||||
Reference in New Issue
Block a user