02 Aug
|
Principal Global Services
|
India
02 Aug
Principal Global Services
India
Responsibilities:
Role Overview
We are seeking a hands-on Lead Software Engineer (Java) to design and deliver scalable, secure, and high‑performance backend systems. This role emphasizes technical excellence, mentorship, driving projects to completion, and clear stakeholder communication.
Key Responsibilities
- Design & Build: Architect and implement Java/Spring Boot microservices and RESTful APIs aligned to business and non-functional requirements.
- Quality Engineering: Establish and maintain a test strategy (unit, integration, performance), enforce code quality.
- Performance & Resilience: Profile JVM and databases, apply caching, implement resilience patterns (circuit breakers, retries, backoff).
- Security & Compliance: Implement secure coding, OAuth2/JWT, input validation, encryption.
- Observability: Implement structured logs, metrics, and distributed tracing, define SLIs/SLOs, alerts, and meaningful dashboards.
- Technical Enablers: Contribute to shared libraries, templates, and reusable patterns, improve developer experience (DX).
- Mentorship & Collaboration: Mentor engineers via pairing and reviews, communicate trade-offs and risks early to Product/Architecture/QA.
- Facilitate agile ceremonies : (stand‑ups, backlog refinement, sprint planning, demos, retros) with a focus on technical outcomes, risk surfacing, and sprint goal clarity.
- Refine stories into actionable technical tasks: ensure Definition of Ready/Done, unambiguous acceptance criteria, testability, and accurate story point estimation.
Qualifications:
Must‑Have Skills (Java)
- Java / Java 8+
- - Deep OOP & SOLID principles.
- Streams API, Optional,
functional interfaces, lambda expressions.
- Multithreading & Concurrency: thread pools, Future/CompletableFuture, synchronization, locks, concurrent collections.
- Java Memory Model: heap/stack fundamentals, Garbage Collection behavior and tuning.
- Web Technologies
- - Design & implement RESTful APIs (idempotency, pagination, robust error models).
- Rate limiting & API Gateway concepts, Swagger/OpenAPI documentation.
- Exposure to WebLogic/WebSphere (or embedded servers: Tomcat/Jetty).
- Spring Framework
- - Spring Core (IoC/DI), Spring MVC, Spring Boot (auto-configuration, starter dependencies).
- Spring Security (JWT, OAuth2), Spring Batch, Spring AOP.
- Architecture & Design Patterns
- - Event-Driven Design (MQ messaging/queuing).
- Design patterns: Factory, Builder, Strategy, Template.
- Data & Tooling
- - Robust SQL (DB2/MySQL): schema design, indexing, query tuning.
- Build & CI/CD: Maven/Gradle, Git, Jenkins/GitHub Actions.
- Testing: JUnit 5, Mockito, Testcontainers
- performance testing (JMeter/Gatling).
- Observability: logs/metrics/traces (Dynatrace, ELK).
Good to Have
- Messaging/eventing (Kafka/JMS)
- Containers (Docker) and orchestration basics (Kubernetes/ECS).
- DDD architecture
Soft Skills
- Strong problem-solving, analytical thinking, and bias for action.
- Plans, prioritizes, and communicates effectively across teams and time zones.
- Mentors teammates, provides clear, constructive feedback.
- Demonstrates ownership, raises the bar, and consistently exceeds day-to-day expectations.
- Identifies ambiguity/risks and proactively drives clarity and resolution with stakeholders.
📌 Lead Software Engineer (India)
🏢 Principal Global Services
📍 India