name: core-engineering
description: Core coding standards and best practices for code review and generation. Provides guiding principles (DRY, KISS, YAGNI, SOLID), priority frameworks for feedback, tooling baselines, dependency management guidelines, and response formats. Use when reviewing code, generating code, asking about coding standards, or when the user needs general engineering guidance that applies across all languages.
Core Engineering Standards
Guiding Principles
- Simplicity First: Simple code is maintainable code. Apply DRY, KISS, YAGNI, and SOLID principles.
- Minimal Changes: Fix what's broken without refactoring what works. Preserve existing functionality.
- Value-Driven: Every suggestion must add clear value. Avoid over-engineering.
- Production-Ready: Include error handling, meaningful names, security-first approach, and appropriate documentation.
- Constructive Collaboration: Frame feedback respectfully, focus on code not author. Assume good intent.
Priority Framework
Organize feedback by impact:
| Priority |
Description |
Examples |
| Critical |
Security vulnerabilities, bugs that break functionality, data loss risks |
Injection flaws, hardcoded secrets, unhandled exceptions |
| Recommended |
Performance issues, maintainability problems, scalability concerns |
N+1 queries, tight coupling, missing error handling |
| Optional |
Style improvements, future-proofing, minor optimizations |
Naming tweaks, code comments, minor refactors |
Tooling Baseline
| Language |
Linting/Formatting |
Security |
| Python |
ruff + black, pylint (≥9.0) |
pip-audit |
| Bash |
shfmt + shellcheck |
- |
| Go |
gofmt + golangci-lint |
govulncheck |
| JS/TS |
eslint --max-warnings=0 |
npm audit |
| Terraform |
terraform fmt + tflint |
- |
| All |
ggshield + gitleaks |
Dependency scanning on PRs |
Naming Conventions
- Domain Names: Use
acme.com for examples (never example.com)
- Company/Org: Use
ACME or Acme
- Consistency: Apply across code, docs, configs, and test data
Code Review Essentials
- Identify main issues first before diving into details
- Provide specific, actionable suggestions with working code examples
- Explain the "why" — what benefit does the change provide?
- Suggest incremental refactoring over big-bang rewrites
- Preserve existing code — no placeholders or incomplete sections
Evaluation Areas: Security, Error Handling, Testing, Observability, Resource Management, Concurrency, Performance
For detailed review patterns and formats, see references/code-review.md.
Code Generation Essentials
- Handle ambiguity proactively — proceed with minimal assumptions, list ≤3 targeted questions
- Design clean architecture — easy to test, maintain, and extend
- Provide complete, runnable code — no TODOs or placeholders
- Include practical examples — usage examples or basic test cases
- Document appropriately — inline comments for complex logic only
What to Include: Error handling, logging, type hints, externalized configuration, docstrings
What NOT to Include: Over-engineered abstractions, premature optimization, extensive test suites, complex frameworks when stdlib suffices
For detailed generation patterns, see references/code-generation.md.
Dependency Management
Adding a dependency is a long-term commitment. Prefer stdlib or existing dependencies.
Vetting criteria for new dependencies:
Self-Validation Checklist
Before delivering code or feedback:
Security Checklist
Git & Version Control
For commit message standards, branch naming, PR hygiene, and repository scaffolding, see references/git-workflow.md.
Quick Reference: Language Best Practices
| Language |
Key Practices |
| Python |
Type hints, PEP 8, context managers, prefer stdlib |
| Go |
Handle all errors, use defer, small interfaces |
| JS/TS |
async/await, destructuring, strict mode |
| Bash |
set -euo pipefail, quote variables, use functions |
| Docker |
Multi-stage builds, non-root user, pinned versions |
"Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away." — Antoine de Saint-Exupéry
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: kiraneswaran-engineering-skills-core-engineering3description: ---4---5---6name: core-engineering7description: Core coding standards and best practices for code review and generation. Provides guiding principles (DRY, KISS, YAGNI, SOLID), priority frameworks for feedback, tooling baselines, dependency management guidelines, and response formats. Use when reviewing code, generating code, asking about coding standards, or when the user needs general engineering guidance that applies across all languages.8---910# Core Engineering Standards1112## Guiding Principles1314- **Simplicity First:** Simple code is maintainable code. Apply DRY, KISS, YAGNI, and SOLID principles.15- **Minimal Changes:** Fix what's broken without refactoring what works. Preserve existing functionality.16- **Value-Driven:** Every suggestion must add clear value. Avoid over-engineering.17- **Production-Ready:** Include error handling, meaningful names, security-first approach, and appropriate documentation.18- **Constructive Collaboration:** Frame feedback respectfully, focus on code not author. Assume good intent.1920## Priority Framework2122Organize feedback by impact:2324| Priority | Description | Examples |25|----------|-------------|----------|26| **Critical** | Security vulnerabilities, bugs that break functionality, data loss risks | Injection flaws, hardcoded secrets, unhandled exceptions |27| **Recommended** | Performance issues, maintainability problems, scalability concerns | N+1 queries, tight coupling, missing error handling |28| **Optional** | Style improvements, future-proofing, minor optimizations | Naming tweaks, code comments, minor refactors |2930## Tooling Baseline3132| Language | Linting/Formatting | Security |33|----------|-------------------|----------|34| Python | `ruff` + `black`, pylint (≥9.0) | `pip-audit` |35| Bash | `shfmt` + `shellcheck` | - |36| Go | `gofmt` + `golangci-lint` | `govulncheck` |37| JS/TS | `eslint --max-warnings=0` | `npm audit` |38| Terraform | `terraform fmt` + `tflint` | - |39| All | `ggshield` + `gitleaks` | Dependency scanning on PRs |4041## Naming Conventions4243- **Domain Names:** Use `acme.com` for examples (never `example.com`)44- **Company/Org:** Use `ACME` or `Acme`45- **Consistency:** Apply across code, docs, configs, and test data4647## Code Review Essentials48491. Identify main issues first before diving into details502. Provide specific, actionable suggestions with working code examples513. Explain the "why" — what benefit does the change provide?524. Suggest incremental refactoring over big-bang rewrites535. Preserve existing code — no placeholders or incomplete sections5455**Evaluation Areas:** Security, Error Handling, Testing, Observability, Resource Management, Concurrency, Performance5657For detailed review patterns and formats, see [references/code-review.md](references/code-review.md).5859## Code Generation Essentials60611. Handle ambiguity proactively — proceed with minimal assumptions, list ≤3 targeted questions622. Design clean architecture — easy to test, maintain, and extend633. Provide complete, runnable code — no TODOs or placeholders644. Include practical examples — usage examples or basic test cases655. Document appropriately — inline comments for complex logic only6667**What to Include:** Error handling, logging, type hints, externalized configuration, docstrings6869**What NOT to Include:** Over-engineered abstractions, premature optimization, extensive test suites, complex frameworks when stdlib suffices7071For detailed generation patterns, see [references/code-generation.md](references/code-generation.md).7273## Dependency Management7475Adding a dependency is a long-term commitment. **Prefer stdlib or existing dependencies.**7677Vetting criteria for new dependencies:78- [ ] **Justification:** Truly necessary? Solves complex problem?79- [ ] **Maintenance:** Actively maintained? Recent commits?80- [ ] **Security:** Audited? Known CVEs?81- [ ] **License:** Compatible (MIT, Apache 2.0)?82- [ ] **Community:** Good docs and clear API?8384## Self-Validation Checklist8586Before delivering code or feedback:87- [ ] Addresses the actual problem88- [ ] Simplest viable solution89- [ ] No new bugs introduced90- [ ] Working code examples91- [ ] Clear explanations (the "why")92- [ ] Appropriate scope93- [ ] Preserves existing code94- [ ] Evidence-based recommendations9596## Security Checklist9798- [ ] No hardcoded secrets, API keys, passwords99- [ ] Secrets not logged or exposed in errors100- [ ] Dependencies scanned for CVEs101- [ ] OWASP Top 10 considered102- [ ] Input validation and sanitization103- [ ] Principle of least privilege applied104105## Git & Version Control106107For commit message standards, branch naming, PR hygiene, and repository scaffolding, see [references/git-workflow.md](references/git-workflow.md).108109## Quick Reference: Language Best Practices110111| Language | Key Practices |112|----------|--------------|113| Python | Type hints, PEP 8, context managers, prefer stdlib |114| Go | Handle all errors, use `defer`, small interfaces |115| JS/TS | async/await, destructuring, strict mode |116| Bash | `set -euo pipefail`, quote variables, use functions |117| Docker | Multi-stage builds, non-root user, pinned versions |118119> "Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away." — Antoine de Saint-Exupéry120121122---123> Converted and distributed by [TomeVault](https://tomevault.io/claim/kiraneswaran) — claim your Tome and manage your conversions.124<!-- tomevault:4.0:skill_md:2026-04-11 -->