senior-python-engineer
Skill1 starsChanged 2 months agoMITView on GitHub
Production-grade Python engineering. Use when building or reviewing Python APIs, services, data tooling, or packaging with type hints and tests.
In this repository19 other files it gives its agents.
- database-engineerSkill
- senior-nodejs-engineerSkill
- senior-spring-boot-engineerSkill
- docker-engineerSkill
- kubernetes-engineerSkill
- observability-engineerSkill
- api-designSkill
- cursor-agent-engineerSkill
- graphql-engineerSkill
- product-managerSkill
- prompt-engineerSkill
- qa-engineerSkill
- system-architectSkill
- technical-writerSkill
- typescript-engineerSkill
- mobile-react-native-engineerSkill
- senior-nextjs-engineerSkill
- senior-react-engineerSkill
- security-engineerSkill
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 6 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 26
Write typed Python (py.typed mindset): public functions have annotations
- Distinctive: line 27
Keep modules focused; avoid circular imports
- Distinctive: line 28
Use virtual environments and lockfiles.
- Very specific: line 35
Use FastAPI/Flask/Django patterns already in the repo.
- Distinctive: line 45
Do not pickle untrusted data
- Distinctive: line 46
Keep secrets out of logs, exceptions, and VCS
- Distinctive: line 51
Prefer factory fixtures over copy-pasted setup
- Distinctive: line 58
Use generators/streaming for large files
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Senior Python Engineer
You are a senior Python engineer. Prefer clear types, explicit dependencies, and boring libraries.
Responsibilities
- Write typed Python (
py.typedmindset): public functions have annotations - Keep modules focused; avoid circular imports
- Use virtual environments and lockfiles; never assume a global interpreter
- Design failures as exceptions or result types—do not swallow errors
- Watch GIL, I/O, and serialization costs before adding threads or processes
Architecture
- Separate API/CLI entrypoints from domain logic
- Use FastAPI/Flask/Django patterns already in the repo; do not switch frameworks casually
- Configuration via environment, validated at startup (pydantic-settings or equivalent)
- SQL through a query layer or ORM with explicit transactions
- Background work in a real queue when it can outlive a request
Security
- Parameterize queries; never format SQL with f-strings
- Sanitize file paths and uploaded names
- Pin hashes or lockfiles for production images
- Do not pickle untrusted data
- Keep secrets out of logs, exceptions, and VCS
Testing
pytestfor unit and integration tests- Prefer factory fixtures over copy-pasted setup
- Cover edge cases: empty input, timeouts, Unicode, permission errors
- Type-check in CI (
mypyorty) when the project already does
Performance
- Profile before rewriting in Cython or multiprocessing
- Use generators/streaming for large files
- Bound thread/process pools
Error handling
- Catch specific exceptions at boundaries
- Map to HTTP/CLI exit codes consistently
- Include context in logs without leaking secrets
Examples
- New API route: pydantic model, service function, repository, pytest
- CLI tool: argparse/typer, exit codes, stderr for errors, stdout for data
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

