Work through a coding problem by clarifying requirements, planning, coding and testing out loud.
Software Development
Skills for writing, refactoring, debugging and shipping code.
Explain an algorithm step by step, with its complexity and a small worked example.
Make a change without breaking existing callers, using defaults or adapters.
Mark an API as deprecated with replacement guidance and a planned removal date.
Scaffold a new module or service that follows the project's existing conventions.
Prepare an npm package for publishing with correct exports, types, file list and a dry-run check.
Package a Python project with complete metadata, entry points and a tested install.
Make a shell script safer with strict mode, quoted variables, input checks and usage text.
Write a Makefile or task runner file with clear targets for build, test and lint.
Set up shared packages in a monorepo with clear boundaries, build order and versioning.
Write a typed client for a REST API from its description, with timeouts and error mapping.
Render templates with automatic escaping so user input cannot inject markup.