Senior Java Engineer (ABAC Enforcement)
$$$
We are looking for a Senior Java Engineer to join the Access & Authorization platform full-time. This is protocol-level, performance-critical systems work β you will be building the mandatory enforcement sidecar for the ABAC platform: a per-pod, request-path component that performs authorization checks at the level of tenant, endpoint, row, and field. This is not CRUD or framework work β we are looking for a systems engineer, not a typical enterprise Java developer.
Your responsibilities will include:
- Build and own the ABAC enforcement sidecar β a performance-critical component sitting in the request path of all services
- Implement four-layer authorization checks: tenant isolation, endpoint access, row-level filtering, and field-masking
- Stream and rewrite JSON response bodies at the token level with near-zero allocation overhead
- Maintain a local decision cache and integrate with a central Decision API
- Own the HTTP layer end-to-end β including conformance, edge cases, and adversarial scenarios
- Ensure fail-closed semantics β the component must deny by default when the policy engine is unavailable
- Write adversarial tests: malformed requests, mid-stream drops, slow clients, header edge cases
What we expect from you:
- Java 21+ without a framework β vanilla Java only; Spring or DI dependency is a disqualifier for this role
- GraalVM native image shipped to production β not experimented with; understands closed-world constraints, reflection config, build-time vs run-time init
- HTTP protocol internals β can implement and reason at spec level: chunked transfer, keep-alive, streaming without buffering full bodies, backpressure, connection handling
- Jackson streaming API (JsonParser/JsonGenerator) β token-level processing, not databind; able to apply field-masks with flat allocation
- Performance engineering with real numbers β has owned a latency SLA (p99, percentiles, RPS); measures before tuning using JMH, async-profiler, allocation profiling
- Caching and invalidation reasoning β understands the decision-cache triangle: hit latency vs revocation latency vs TTL, negative caching, stampede protection
- AuthZ fundamentals and fail-closed semantics β understands PDP/PEP separation, deny-overrides, tenant isolation; knows the sidecar applies decisions, not computes policy
- Minimal-dependency mindset β solves with the JDK first; can articulate the real cost of adding a library in a native-image context
Will be a plus:
- Netty β used at the channel/pipeline level
- Service mesh / sidecar patterns β Envoy, ext_authz, Istio, Dapr
- Authorization engines β OPA/Rego, Cedar, Zanzibar-style systems, Oso
- GCP stack β Pub/Sub, Memorystore/Redis, BigQuery
- Kubernetes β sidecar injection, resource limits, probes, startup ordering
- gRPC / protobuf over HTTP
- Experience in regulated-data domains β FERPA, COPPA, HIPAA, or similar
- jlink / AppCDS / CRaC β JVM-fallback literacy if native image is constrained
Soft skills / Mindset:
- Systems thinker β reads RFCs, owns the protocol layer, does not treat HTTP as βwhat the framework handlesβ
- Measurement discipline β quotes numbers, not vibes; profiles before tuning
- Dependency-conscious β resists the reflex to add a library; accounts for native-image surface and supply-chain cost
- Fail-closed by instinct β treats fail-open as a security consequence, not an availability trade-off
- Upper-Intermediate+ English level
What We Offer:
- Work at a Top-employer company (according to DOU 2025)
- A strong culture built on empathy, trust, openness, and real care for employees
- Competitive compensation with regular reviews
- Medical insurance
- Team events and regular team-building activities
- Flexible hybrid work model with an office in central Kyiv or fully remote
Required languages
English
B2 - Upper Intermediate
See stats of candidates who applied for this job π
π
$3500-5000
Average salary range of similar jobs in
analytics β
Loading...