Java Enterprise Development logo

Java Enterprise Development

Community
peterbamuhigire
java-enterprise-development

Use when building, diagnosing, or modernising Java/JVM APIs, data pipelines, modular ERP, or Hibernate N+1/fetch plans with Spring Boot/Batch, Jakarta EE, transactions, tests, PostgreSQL/jOOQ, Maven/Gradle, WebLogic, Oracle JDBC, Quarkus, GraalVM, JFR, or javax-to-jakarta.persistence migration.

Overview

Publisherpeterbamuhigire
Repositorychwezi-dev-engine
Skill namejava-enterprise-development
Stars
29
Forks
6
Bundled files
22
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 22 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by peterbamuhigire on GitHub. Read the source before you install it.

Installation

Install the Java Enterprise Development AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/peterbamuhigire/chwezi-dev-engine/tree/main/skills/languages/java-enterprise-development
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/peterbamuhigire/chwezi-dev-engine.git /tmp/chwezi-dev-engine
mkdir -p .claude/skills
cp -r /tmp/chwezi-dev-engine/skills/languages/java-enterprise-development .claude/skills/java-enterprise-development
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Java Enterprise Development in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Java Enterprise Development on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Java Enterprise Development is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Java Enterprise Development

Use this skill as the Java- and JVM-specific judgement layer for long-lived enterprise systems. It turns cross-cutting architecture, security, data, delivery, and operations contracts into version-aware Java decisions and evidence without replacing their owning skills.

Prompting and AI-assisted implementation

When generating a Java task prompt, include the actual JDK/toolchain and build evidence, affected flow and layer, API/data contracts, transaction and security invariants, non-goals, expected files, and acceptance commands. Prefer a staged handoff: inspect the repository and reproduce the symptom; plan the smallest change; implement within the write set; compile and run focused tests; then review compatibility, error handling, observability, and unchanged behaviour. For debugging, provide the stack trace and reproduction, ask for a root-cause hypothesis tied to code evidence, and require a targeted regression test. For refactors, state what behaviour must remain unchanged. Treat dependency, framework, JDK, and API-version suggestions as NOT ASSESSED until the local build and current primary sources support them.

Prerequisites

Load world-class-engineering, anti-ai-slop, and the delivery evidence pack. For current versions, lifecycle, licensing, compatibility, or support claims, consult docs/source-registers/java-enterprise.md and run the Digital Research source-evaluation and source-verification gates. Load the finance engine in addition when implementing money, ledger, tax, payroll, close, or accounting rules.

Use When

  • Building or reviewing Java services, APIs, workers, batch systems, libraries, modular monoliths, distributed systems, or application-server deployments.
  • Working with the JVM, Spring, Jakarta EE, Hibernate, jOOQ, JDBC, Maven, Gradle, Quarkus, Micronaut, Helidon, GraalVM, WebLogic, or Oracle integration.
  • Diagnosing Java CPU, memory, garbage collection, thread, connection-pool, startup, latency, or messaging incidents.
  • Planning staged upgrades from older Java, Java EE, Spring Boot, Hibernate, build-tool, or application-server generations.

Do Not Use When

  • The task is generic system decomposition, API design, database design, security, Kubernetes, cloud, SaaS, AI, or accounting with no Java-specific decision. Use that specialist first and return here for implementation.
  • The task is Android/Kotlin application work; use the Android or Kotlin Multiplatform route unless a separate Java backend is also in scope.
  • A current product or licensing claim lacks a verified source. Research it; do not fill the gap from memory or this skill.

Inputs

Artefact or factRequired?If absent
Repository, affected flow, acceptance criteria, and failure consequenceyesInspect or frame before changing code
JDK distribution/version and Java language/toolchain levelyesDetect from build, CI, image, and runtime; mark unresolved fields NOT ASSESSED
Framework, persistence, build-tool, database, runtime, and deployment versionsconditionalRead manifests, lock/BOM data, server config, and release metadata
Architecture boundaries, API/data contracts, security model, and scale/SLOsconditionalObtain from owning specialist or state the missing decision
Tests, logs, metrics, traces, profiles, dumps, migrations, and release evidenceconditionalNarrow diagnosis or readiness verdict; never invent evidence

Workflow

  1. Frame one vertical slice. Name actor, business invariant, normal path, failure path, side effects, telemetry, rollback boundary, and consequence of error.
  2. Identify the actual platform. Inspect Maven/Gradle files, wrappers, toolchains, BOMs, CI, container image, framework metadata, database driver, application server, deployment descriptors, and runtime output. Record the version-awareness card below.
  3. Verify lifecycle facts. Compare detected versions with the current source register. Re-open official sources when the review date or target differs.
  4. Trace boundaries before code. Follow the request/event/job through transport, authentication, application rule, transaction, persistence, side effect, telemetry, and recovery. Preserve working local conventions.
  5. Load only relevant depth. Select the Java reference for the decision and pair it with the owning cross-cutting skill.
  6. Choose explicitly. Record an ADR for costly framework, architecture, persistence, concurrency, native-image, application-server, or vendor choices. Use measured requirements, team capability, support, and exit cost.
  7. Make the smallest coherent change. Keep domain invariants visible, configuration validated, transactions explicit, concurrency bounded, and external calls failure-aware.
  8. Exercise normal and failure behaviour. Run only commands supported by the repository: wrapper-based compile/test/verify tasks, static/security checks, migration checks, and a realistic smoke test. Inspect the outputs.
  9. Test production shape. Where applicable exercise the packaged artefact, runtime configuration, database dialect, broker, container limits, probes, graceful termination, telemetry, and rollback or roll-forward procedure.
  10. Record an evidence verdict. Use PASS, PARTIAL, FAIL, NOT ASSESSED, or NOT APPLICABLE per quality area. Never collapse missing load, failover, restore, or production evidence into a pass.

Version-awareness card

text
JDK distribution/runtime:
Java language and bytecode target:
Framework and modules:
Jakarta/Java EE level:
Persistence provider and database driver:
Build tool and wrapper:
Application server or embedded runtime:
Database and dialect:
Packaging and deployment target:
Support evidence/review date:

Quality Standards

  • Correctness and data integrity outrank framework convenience. Define money, rounding, time zones, transaction isolation, idempotency, and concurrency behaviour at the business boundary.
  • Prefer a supported LTS runtime for production when constraints permit, but do not upgrade or change distributions without compatibility, licensing, operational, and rollback evidence.
  • Keep business rules out of controllers, listeners, entities, framework callbacks, deployment descriptors, and generated persistence plumbing.
  • Treat Spring annotations, Jakarta interceptors, ORM sessions, transactions, retries, reactive pipelines, and native-image metadata as mechanisms whose boundaries and failure semantics must be understood.
  • Require bounded executors, queues, result sets, request bodies, retries, timeouts, caches, batch chunks, and concurrency. Propagate cancellation or interruption according to the runtime contract.
  • Verify dependencies and APIs against the pinned build. Use framework BOMs or Gradle platforms, wrappers, convergence/locking controls, and trusted repositories; arbitrary dependencies require a recorded benefit and owner.
  • Make the shipped unit diagnosable: release identity, structured safe logs, metrics, traces, JVM evidence access, health semantics, and an owned runbook.
  • Optimise only against a repeatable workload and before/after evidence. Do not prescribe JVM flags, reactive programming, caching, Native Image, or a new framework as folklore.

Decision Rules

DecisionPreferRequire before choosing the costlier alternative
New system shapeModular monolith with explicit modulesIndependent deployment/scaling/security ownership plus operational maturity for services
Request concurrencySpring MVC/servlet or Jakarta REST with platform/virtual threads where supportedEnd-to-end non-blocking stack, measured concurrency need, backpressure design, and reactive operating skill for WebFlux
PersistenceJPA/Hibernate for aggregate-centred transactional workjOOQ for SQL-led queries/vendor features; JDBC for small explicit paths; evidence for mixed models
Enterprise platformExisting supported platform and team competenceComparative ADR for Spring Boot, Jakarta runtime, Quarkus, Micronaut, or Helidon
JVM or Native ImageJVM for broad compatibility and steady-state optimisationStartup/density requirement, compatibility inventory, build/debug plan, and measured native result
Maven or GradleExisting wrapper and conventionsMigration benefit exceeding retraining, plugin, cache, and reproducibility cost
Local or distributed transactionLocal transaction plus idempotent workflow/outboxXA/JTA only when atomic resource coordination is required and failure/recovery is exercised
Vendor-specific capabilityStandard/portable contract with an adapterMeasured benefit, support commitment, isolation boundary, migration cost, and fallback

Outputs

ArtefactConsumerTemplate
Java implementation/review and version-awareness cardDeveloper and maintainerInline and repository-native code
Java architecture or technology ADRsystem-architecture-design and reviewerstemplates/architecture-decision.md
Java production-readiness verdictRelease ownertemplates/production-readiness.md
JVM incident diagnosisOperators and incident ownertemplates/java-incident-runbook.md
Performance experimentPerformance/reliability ownertemplates/performance-evidence.md
Staged Java/platform migrationdeployment-release-engineeringtemplates/migration-plan.md
Java release gateCI/CD and release ownertemplates/release-readiness.md

Evidence Produced

CategoryArtifactFormatExample
CorrectnessCompile, test, integration, migration, and business-invariant resultsVerification log: exact command/task, environment, result, and failures retaineddocs/java/verification.md
SecurityDependency/SAST/configuration findings plus threat-model linkageFindings register: Java-specific findings and specialist disposition are traceabledocs/java/security-findings.md
PerformanceWorkload, runtime, profile, before/after measurementsExperiment record: same controlled workload; no claim from a single unqualified numberdocs/java/performance-evidence.md
OperabilityPackaged smoke, telemetry, termination, recovery, and ownership evidenceRuntime check log: runtime identity and failure path are exercised or marked NOT ASSESSEDdocs/java/runtime-checks.md
Release evidenceArtefact/SBOM/provenance, migration, rollout, rollback or roll-forward evidenceRelease record: immutable identity and accountable owner are recordeddocs/java/release-evidence.md

Anti-Patterns

  • Adding interfaces, factories, base managers, wrappers, or mapping layers with no boundary or substitution need. Fix: keep the direct coherent design.
  • Organising a large codebase only as global controllers/services/repositories. Fix: preserve existing shape or group by bounded capability with enforced dependencies.
  • Treating @Transactional, retries, Kafka delivery, or database constraints as magic correctness. Fix: trace proxy/resource boundaries and test duplicate, rollback, isolation, deadlock, and partial-failure behaviour.
  • Returning persistence entities as public contracts. Fix: use explicit API or event models where privacy, compatibility, or boundary ownership matters.
  • Selecting microservices, WebFlux, Native Image, event sourcing, CQRS, or cache because it sounds modern. Fix: write the requirement and measure the trade-off.
  • Catching Exception without containment and recovery, swallowing interrupts, logging the same failure at every layer, or exposing stack traces. Fix: translate once, preserve cause/correlation, and assign logging ownership.
  • Creating raw threads, unbounded pools/queues, ad hoc retries, or parallelStream on server request paths. Fix: use managed, bounded concurrency and load tests.
  • Using binary floating point for money or relying on implicit time zones and locale. Fix: define decimal scale/rounding, currency, java.time type, zone, locale, and database mapping.
  • Setting heap equal to container memory or copying -XX flags from another service. Fix: budget heap and native consumers, collect evidence, change one supported control, and retain or revert.
  • Claiming a build, test, benchmark, failover, or release passed without tool output. Fix: mark it NOT ASSESSED and name the exact missing check.

Read Next

  • system-architecture-design, distributed-systems-patterns, and microservices-architecture for boundaries, ADRs, consistency, and topology.
  • api-design-first, database-design-engineering, and the database-specific skill for contracts, access patterns, schema, SQL, and database operations.
  • vibe-security-skill and web-app-security-audit for threat modelling, authorisation, supply-chain, and release security.
  • advanced-testing-strategy, observability-monitoring, reliability-engineering, and deployment-release-engineering for evidence, SLOs, incidents, rollout, and recovery.
  • kubernetes-platform, cloud-architecture, relevant SaaS skills, and AI skills when Java implements those specialist decisions.

References

  • references/java-language-runtime-concurrency.md
  • references/architecture-framework-selection.md
  • references/spring-production.md
  • references/jakarta-runtimes-cloud-native.md
  • references/persistence-transactions-oracle.md
  • references/api-messaging-distributed-systems.md
  • references/security-testing-quality.md
  • references/build-supply-chain-release.md
  • references/performance-observability-operations.md
  • references/containers-kubernetes-cloud.md
  • references/oracle-platforms.md
  • references/legacy-modernisation.md
  • references/ai-in-enterprise-java.md
  • references/source-study-notes.md
  • examples/enterprise-java-reference.md
  • examples/red-team-scenarios.md

Capability Contract

Read and search are required. Editing and execution follow the task authority. Network access is required for stale lifecycle/API claims. Delegation is optional and limited to independent scopes. Production mutation, deployment, data change, or irreversible migration requires explicit authority and recovery proof.

Degraded Mode

Without source, build, runtime, database, load, security, or production access, return the narrowest evidence-backed plan or review. List exact commands and artefacts still needed, and mark each affected quality area NOT ASSESSED.

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Java Enterprise Development AI skill do?

Use when building, diagnosing, or modernising Java/JVM APIs, data pipelines, modular ERP, or Hibernate N+1/fetch plans with Spring Boot/Batch, Jakarta EE, transactions, tests, PostgreSQL/jOOQ, Maven/Gradle, WebLogic, Oracle JDBC, Quarkus, GraalVM, JFR, or javax-to-jakarta.persistence migration.

Why use Java Enterprise Development on TypingMind?

Because you install it once and use it with any model. Java Enterprise Development is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Java Enterprise Development in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/peterbamuhigire/chwezi-dev-engine/tree/main/skills/languages/java-enterprise-development. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Java Enterprise Development?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Java Enterprise Development?

As many as you like. As long as a model supports skills, you can use Java Enterprise Development with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Java Enterprise Development AI skill free?

Yes. It is published on GitHub by peterbamuhigire under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇