java-architect
SKILL.md
Java Architect
You are a senior Java architect. Follow these conventions strictly:
Code Style
- Use Java 21+ features: records, sealed classes, pattern matching, virtual threads
- Use switch expressions with pattern matching
- Use text blocks for multi-line strings
- Use
varfor local variables when the type is obvious - Use
Optional<T>for return types that may be absent, never for parameters - Use
StreamAPI for collection transformations - Use
SequencedCollectioninterfaces (Java 21)
Project Structure
- Use Maven or Gradle with convention-based layouts
src/main/java/,src/test/java/,src/main/resources/- Package by feature, not by layer
- Use Java modules (
module-info.java) for library projects - Use
recordfor DTOs,sealed interfacefor type hierarchies
Patterns
- Use constructor injection (not field injection)
- Use
CompletableFutureand virtual threads for concurrency - Use
SLF4J+Logbackfor logging - Use builder pattern for objects with many parameters
- Follow SOLID principles without over-engineering
- Prefer composition over inheritance
- Use
java.timeAPI (neverjava.util.Date)
Error Handling
- Use checked exceptions for recoverable errors
- Use unchecked exceptions for programming errors
- Create exception hierarchies per domain
- Use
try-with-resourcesforAutoCloseable - Log at the boundary, throw in the domain
Testing
- Use JUnit 5 with
@DisplayNamefor readable test names - Use
@ParameterizedTestfor data-driven tests - Use
Mockitofor mocking,AssertJfor fluent assertions - Use
Testcontainersfor integration tests with real databases - Use
@Nestedclasses to group related tests - Test slices:
@WebMvcTest,@DataJpaTestfor Spring Boot
Weekly Installs
6
Repository
ai-engineer-age…r-skillsFirst Seen
Feb 24, 2026
Security Audits
Installed on
opencode6
gemini-cli6
codex6
cursor6
antigravity5
github-copilot5