Learn Java API Contract Engineering, Event Contract Engineering & Schema Governance
// Kaufman skill map untuk menguasai contract engineering sebagai disiplin engineering, bukan sekadar dokumentasi API atau schema file.
This overview is designed to help you choose the right entry point quickly. Follow the full track from lesson one, continue from your last checkpoint, or jump straight into a phase that matches what you need right now.
Curriculum Map
Navigate by phase, then choose the lesson that matches your current depth.
Kaufman Skill Map
32 minKaufman skill map untuk menguasai contract engineering sebagai disiplin engineering, bukan sekadar dokumentasi API atau schema file.
Contract Taxonomy
30 minTaxonomy kontrak untuk HTTP API, RPC, event, command, query, webhook, batch, file, stream, schema, SDK, dan platform interface di enterprise Java systems.
Contract Invariants
24 minContract invariants yang harus dijaga agar API, event, schema, dan behavior antar sistem tidak berubah secara tidak sengaja.
Contract-First vs Code-First vs Consumer-First
20 minPerbandingan contract-first, code-first, annotation-first, test-first, dan consumer-first sebagai source of truth contract di Java enterprise system.
OpenAPI Deep Model
19 minOpenAPI sebagai executable API semantics, bukan sekadar dokumentasi endpoint; bagaimana mendesain HTTP API contract yang stabil, machine-readable, testable, dan governance-ready.
HTTP Contract Semantics
20 minHTTP contract semantics untuk API engineer: method semantics, status code, headers, caching, conditional requests, optimistic concurrency, retry, dan idempotency sebagai contract surface.
Request and Response Design: DTO Boundaries, Validation Semantics, and Evolution Safety
22 minRequest and response design for stable Java API contracts: DTO boundaries, validation semantics, field lifecycle, data types, and evolution safety.
Error Contract Engineering: Stable Failure Models for Distributed Consumers
17 minStable error contract engineering for Java HTTP APIs: Problem Details, error taxonomies, retryability, validation errors, domain failures, compatibility, and governance.
API Versioning Strategy: Compatibility Before Version Numbers
20 minAPI versioning strategy for Java platform engineers: compatibility-first evolution, deprecation, sunset, consumer capability negotiation, and migration governance.
OpenAPI in Java: Spring Boot, JAX-RS, Swagger Core, springdoc, and Generator Boundaries
15 minPractical OpenAPI in Java: Spring Boot, JAX-RS, Swagger Core, springdoc, OpenAPI Generator, project structure, CI, and source-of-truth boundaries.
API Client Contract Engineering: Generated Clients, SDKs, Resilience, and Consumer Ergonomics
15 minAPI client contract engineering for Java: generated clients, SDK wrappers, resilience semantics, error mapping, pagination, idempotency, and consumer ergonomics.
API Contract Testing: Provider Verification, Consumer Expectations, and Drift Detection
18 minAPI contract testing for Java systems: OpenAPI validation, provider verification, consumer-driven contracts, Pact, Spring Cloud Contract, stubs, CI gates, and drift detection.
Event Contract Mental Model: Facts, Commands, Notifications, and State Transfer
18 minEvent contract mental model for Java engineers: facts, commands, notifications, state transfer, event identity, causality, correlation, ordering, and semantic compatibility.
Event Envelope Design: Metadata, Payload, Routing, Idempotency, and Observability
18 minEvent envelope design for Java event-driven systems: metadata, payload separation, routing, schema identity, idempotency, tracing, tenancy, data classification, and governance.
AsyncAPI Deep Model: Describing Message-Driven APIs Across Protocols
13 minAsyncAPI deep model for Java event-driven systems: channels, messages, operations, servers, bindings, schemas, examples, governance metadata, and contract-first EDA documentation.
Kafka Event Contracts: Topic, Key, Partitioning, Ordering, Retention, and Replay Semantics
17 minKafka event contract engineering for Java systems: topic design, message keys, partitioning, ordering, retention, compaction, replay, consumer groups, poison messages, and DLQ semantics.
Avro Contract Engineering: Schema Resolution, Defaults, Union Types, and Evolution
17 minAvro contract engineering for Java event-driven systems: schema resolution, writer/reader schemas, defaults, union types, logical types, aliases, namespaces, code generation, and schema evolution.
Protobuf and gRPC Contract Engineering: Tags, Presence, Editions, and Compatibility
18 minProtobuf and gRPC contract engineering for Java: field numbers, presence, proto3, editions, reserved fields, enum evolution, oneof compatibility, service contracts, and generated code behavior.