About The Company:
Principal Global Services is a Global In-house Center, dedicated to supporting
Principal Financial Group achieve our common purpose of empowering and
enabling our customers across the globe by protecting and advancing their
financial well-being through retirement, insurance and asset management
solutions. Since our inception in 2006, our continued focus has been to take
our services to the next level of providing solutions, which has been further
reinforced with stimulating results and a clear strategic direction. Over the
last decade, we have assimilated the right mix of talent and competencies to
build a center of excellence that delivers quality, innovation and strategic
value. We offer right over best opportunities for a holistic growth, because
we believe that engagement is directly proportional to the right
opportunities, fostered by cultural pillars of empowerment and enablement.
Principal Global Services has offices in Hyderabad (India), Manila
(Philippines) and Pune (India). To find out more, visit us at
www.principal.com
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
.
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
-
Strong
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.