- Company Name
- IFG - International Financial Group
- Job Title
- Senior Java Software Engineer
- Job Description
-
Job Title: Senior Java Performance Engineer
Role Summary
Specialized engineer focused on diagnosing and eliminating performance bottlenecks in large‑scale Java services. Bridges Java internals, JVM tuning, infrastructure efficiency, and systems profiling to drive significant reductions in compute usage and operational cost.
Expectations
- Deep expertise in JVM performance, garbage collection, and Java internals.
- Proficiency in advanced profiling tools and techniques.
- Ability to independently own the profiling‑diagnosis‑recommendation cycle.
- Deliver high‑impact, actionable optimization recommendations rather than micro‑tuning.
- Strong analytical, problem‑solving, and communication skills to collaborate with development and operations teams.
Key Responsibilities
1. **JVM & Application Profiling** – Use JFR, JMC, async‑profiler, VisualVM, or similar tools to identify CPU, memory, GC, thread contention, logging overhead, and serialization inefficiencies.
2. **Service Behavior Analysis** – Assess Dropwizard‑based REST services for handling, JSON/XML serialization, logging, DB access, and concurrency models that affect performance.
3. **Infrastructure Cost & Capacity Optimization** – Analyze current core usage (~30k cores), recommend JVM parameter tuning, reduce garbage creation, improve I/O and network efficiency, refactor bottleneck components, and scale capacity down.
4. **Actionable Optimization Delivery** – Provide clear, high‑value recommendations such as removing expensive logging, reducing serialization overhead, tightening API payloads, improving connection pooling, object churn, and implementing caching.
5. **Full Pipeline Ownership** – Lead the end‑to‑end process from profiling to diagnosis to recommendation, ensuring measurable impact on performance and cost.
Required Skills
- Advanced knowledge of JVM internals (GC tuning, JIT, HotSpot, etc.).
- Mastery of profiling tools: JFR, JMC, async‑profiler, YourKit, VisualVM.
- Experience with Dropwizard, RESTful services, JSON/XML handling.
- Strong understanding of GC algorithms, memory management, and thread contention.
- Familiarity with cloud/container infrastructure cost and capacity planning.
- Proficient Java (8+) coding and code review for identifying inefficiencies.
- Excellent analytical, problem‑solving, and communication abilities.
- Knowledge of CI/CD pipelines, monitoring, and alerting systems.
Required Education & Certifications
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, or a related field.
- Certifications such as Oracle Certified Professional – Java SE, GCP Performance Engineering, or similar are advantageous.