Principal Financial Group
Website:
principal.com
Job details:
Responsibilities
What You'll do
As a
Lead Software Engineer (Java & UI) at Principal Financial Group, you will be at the forefront of crafting innovative and high-performance software solutions. Your role will involve crafting, developing, and implementing software that drives our products. You will work in close collaboration with our product development team to understand user needs and translate them into flawless technical specifications. Ensuring our software products are scalable, reliable, and efficient will be key to your success.
You'll Have Opportunity To
Design and deliver
end‑to‑end platforms with
Java as primary and
modern UI as secondary. Focus areas include
technical delivery,
mentorship,
quality,
performance, and
effective stakeholder communication.
- Full‑Stack Architecture: Define clean boundaries between Java microservices (API‑first) and React/TypeScript/Next.js front‑ends, standardize API contracts and BFF patterns (Java-first).
- Build & Delivery: Implement domain services and REST APIs in Java, contribute to critical UI workflows and component libraries when needed.
- Quality & Testing: Apply test pyramids across tiers—JUnit/Mockito/Testcontainers (BE), Jest/RTL/Playwright (FE), enforce API/UI contract tests.
- Performance & Security: JVM/DB tuning, caching, resilience, optimize Core Web Vitals and SSR/SSG/ISR, apply OAuth2/JWT, CSP.
- Observability: Logs/metrics/traces across BE & FE and error tracking, dashboards and alerting for release health.
- Mentorship & Collaboration: Mentor engineers, promote reuse (shared libs/components), communicate risks/trade-offs and align on scope with Product/UX/Architecture.
- 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
Who You are:
Java (Primary)
- Java / Java 8+: OOP & SOLID, Streams, Optional, functional interfaces, lambda expressions.
- Concurrency: Thread pools, Future/CompletableFuture, synchronization, locks, concurrent collections, Java Memory Model, heap/stack, GC.
- Web & API: RESTful design, rate limiting, API gateway concepts, Swagger/OpenAPI documentation, WebLogic/WebSphere familiarity (or embedded servers).
- Spring: Spring Core (IoC/DI), Spring MVC, Spring Boot, Spring Security (JWT/OAuth2), Spring Batch, Spring AOP.
- Architecture & Patterns: Event‑driven design (MQ/queuing), patterns—Factory, Builder, Strategy, Template.
- Data/Testing/Tooling: SQL & query tuning, Redis, JUnit/Mockito/Testcontainers, Maven/Gradle, Git, CI/CD, OpenTelemetry.
UI (Secondary – 20–30%)
- React + TypeScript + Next.js: Component-driven development, hooks, state (Redux/RTK/Zustand), SSR/SSG/ISR, routing, image optimization.
- Performance & Accessibility: Core Web Vitals, code splitting, caching/CDN, WCAG 2.1 accessibility practices.
- Security & Testing: CSP, sanitization, XSS/CSRF protections, Jest, RTL, Playwright/Cypress.
- Integration: Robust consumption of Java APIs, auth flows (OAuth/OIDC, JWT), error handling and retry UX.
Good to Have
- Design systems (Storybook, tokens/theming), monorepos (Nx/Turborepo).
- Messaging/eventing (Kafka), BFF-in-Java standards, API versioning strategies.
- Containers (Docker) and orchestration basics (Kubernetes/ECS).
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.
Additional Information
Our Engineering Culture:
In our Agile/Lean DevOps environment, we've nurtured a culture of innovation and experimentation across our development teams. As a customer-focused organization, we collaborate closely with our end users and product owners to understand and rapidly respond to emerging business needs. Collaboration is ingrained into every aspect of our work – from the products we develop to the world-class service we offer. We are motivated by the belief that diversity of thought, background, and perspective is crucial to crafting the finest products and experiences for our customers. Come join us and become a part of a highly ambitious team dedicated to delivering impeccable solutions!
Click on Apply to know more.