Job Description: Senior Software Engineer
As a Senior Software Engineer, you will design, build, and own critical product
features within the SaaS product serving enterprise customers globally. You will
work within a stream-aligned team, contributing to a microservices-based
architecture backed by GraphQL APIs, event-driven pipelines, and emerging AI-
powered capabilities. With 5–8 years of experience, you are expected to drive
complex technical decisions, mentor engineers, and champion code quality,
reliability, and user-centric development.
Job Family Designation Contribution
Information Technology/
Software Development
Senior Software
Engineer Team Member
Key Responsibilities
System Design & Architecture: Design and implement complex
modules/services that meet functional, performance, and scalability
requirements. Participate in Architecture Decision Records (ADRs) and
contribute to cross-team architectural proposals.
Product Development: Build and evolve user-facing product features with a
product mindset—understand user impact, measure outcomes, and iterate
based on feedback. Deliver features on schedule and within budget.
GraphQL API Development: Design, implement, and optimize federated
GraphQL APIs using Apollo Federation, ensuring schema integrity across
subgraphs and cross-team collaboration via the GraphQL gateway.
Event-Driven Architecture: Build and maintain event-driven data pipelines
using Apache Kafka (producers/consumers, Avro serialization, Confluent
Schema Registry) to enable real-time data flows across microservices.
Observability & Reliability: Instrument services with OpenTelemetry for
distributed tracing, metrics, and logging. Proactively identify and resolve
performance bottlenecks. Champion system reliability through monitoring,
alerting, and incident response.
Code Quality & Testing: Write comprehensive unit and integration tests
(JUnit 5, Mockito). Maintain high code coverage (Jacoco, Codacy).
Participate in design and code reviews with a focus on maintainability and
security.
Mentoring & Leadership: Mentor, train, and serve as a knowledge
resource for less experienced engineers. Lead technical discussions, drive
adoption of best practices, and contribute to engineering culture.
Agile Collaboration: Participate in backlog grooming, sprint planning, and
cross-functional collaboration with Product Management, Architecture
Coalition, and peer engineering teams.
Documentation: Write and maintain technical documentation including
ADRs, API schemas, runbooks, and design proposals following MADR-
based templates.
Business Travel and Physical Demands
Business travel of approximately 10 or less percent yearly is expected for this
position. Physical demands:
Office environment. No special physical demands required.
Preferred Qualification
Bachelor’s degree in Computer Science, Computer Engineering, or
equivalent.
5–8 years of hands-on software development experience in a product-based
or SaaS environment.
Advanced competency in object-oriented design, data structures, complexity
analysis, and distributed systems.
Experience building and operating production microservices at scale.
Strong product mindset—ability to reason about user impact and make
tradeoffs between speed, quality, and scope.
Experience leading or mentoring a team of developers; proven technical
leadership and collaboration skills.
Experience working in Agile/Scrum teams with a focus on iterative delivery.
Familiarity with architectural decision-making processes (ADRs, RFCs,
design reviews).
Excellent written and verbal communication skills.
Technologies
Web Technologies
HTML5, CSS3, JavaScript (ES6+),
TypeScript, React, Vite, Module Federation
v2 (Micro Frontends), GraphQL, JSON,
OAuth 2.0, REST APIs, OpenAPI/Swagger
Frameworks
Spring Boot 3.x, Spring Security, Spring
Kafka, Spring Data JPA, Spring GraphQL,
Apollo Federation, Thymeleaf
Java/J2EE Technologies
Java 21, Jakarta EE (Servlets, Validation,
XML Bind), Spring Framework 6.x, Lombok,
Jackson, Netty, Restful Webservices
Database(s) PostgreSQL 15+, Flyway (database
migrations), PL/pgSQL
App/Web Servers Apache Tomcat 10.x (embedded), Docker
containers
ORM Tools Hibernate 6.x (via Spring Data JPA),
Hypersistence Utils
Build Tools Maven 3.9+, Maven Wrapper, Gradle
(familiarity)
Schedulers Quartz Scheduler
Configuration Management
Tools Git, GitHub, LaunchDarkly (feature flags)
Reporting Tools
Codacy (code quality & coverage), Jacoco
(code coverage), Surefire (test reporting),
SpringDoc OpenAPI
IDE IntelliJ IDEA, VS Code
Messaging & Streaming Apache Kafka, Confluent Schema
Registry, Apache Avro, Protobuf
CI/CD & DevOps GitHub Actions, Docker, Harbor (container
registry), AWS (EC2, S3, RDS, Bedrock),
Akkeris (PaaS)
Messaging & Streaming Apache Kafka, Confluent Schema Registry,
Apache Avro, Protobuf
Observability OpenTelemetry (Java Agent), distributed
tracing, structured logging (Logback/SLF4J)
Skills & Competencies
Competency Level
Business Domain Expertise Intermediate
Engineering Excellence / Agile Proficient
Requirements Analysis Intermediate
System Design & Architecture Proficient
Coding (Java, Spring Boot, GraphQL) Proficient
Distributed Systems & Event-Driven Architecture Proficient
Defect Root Cause Identification / Problem
Analysis
Proficient
Quality Validation (Testing, CI/CD) Proficient
Observability & Reliability Engineering Intermediate
Configuration Management & DevOps Proficient
AI/ML Literacy & LLM Integration Intermediate
Technical Leadership & Mentoring Proficient
Communication – Written Proficient
Communication – Interpersonal Proficient
Leading Yourself & Others Proficient
Security Awareness Intermediate