Senior Software Engineer - Domain Services

Aep Service Corporation
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
$ 151K

Job location

Tech stack

Clean Code Principles
Java
Spring Security
API
Azure
Customer Information Control System (CICS)
Cloud Computing
Code Coverage
Software Quality
Code Review
Continuous Integration
Data Validation
ETL
Data Stores
DevOps
Distributed Systems
Enterprise Architecture Framework
Middleware
Fault Tolerance
Gradle
Java Platform Standard Edition (J2SE)
JSON
Key Management
Mainframes
OAuth
OpenID
Openshift
Oracle
Oracle Applications
Scrum
Redis
Prometheus
Runbook
Software Engineering
SQL Databases
Systems Integration
Strategies of Testing
Management of Software Versions
Z/OS
Openapi
Data Logging
File Transfer Protocol (FTP)
Spring Cloud
Grafana
Spring-boot
Software Security
Kubernetes Helm Charts
Caching
Gitlab
GIT
Spring Data
Event Driven Architecture
Integration Tests
Kubernetes
Information Technology
Production Code
Kafka
Event Sourcing
Api Gateway
Software Coding
REST
Splunk
Dynatrace
Api Management
Docker
Jenkins
Microservices

Job description

This role is responsible for engineering and operating the enterprise Kafka platform, which is a strategic, on-prem data movement backbone. The focus is on platform stability, scalability, data safety, and enablement of producer/consumer teams., We are seeking hands-on software engineers to design, build, and deliver domain microservices on our middleware platform. This dual-responsibility role combines deep technical execution with leadership of third-party development teams. You will architect features, write production code, conduct code reviews, and guide offshore/contractor teams to ensure high-quality delivery. The ideal candidate thrives in a player-coach model: rolling up sleeves to solve complex technical problems while mentoring and directing 3PL teams., * Design and implement microservices using Spring Boot 3.X+ and Java 21+ on the core middleware framework.

  • Build REST APIs following OpenAPI 3.0 standards with proper versioning, error handling, and documentation.
  • Develop integration workflows with z/OS Connect (MACSS), GigaWatt REST APIs, and Kafka event streams.
  • Implement Hybrid CIS routing logic leveraging the Redis-backed routing engine for account/capability-level decisions.
  • Write clean, maintainable, testable code with comprehensive unit and integration tests achieving >80% code coverage.
  • Leverage framework capabilities: OAuth2 security, circuit breakers, structured logging, distributed tracing, secrets management.
  • Optimize service performance, handle edge cases, and ensure graceful degradation under failure scenarios.
  • Participate in on-call rotation and respond to production incidents.
  • Lead and mentor offshore/contractor developers (3-6 engineers) delivering features and user stories.
  • Conduct architecture and design reviews for work assigned to 3PL teams.
  • Perform thorough code reviews ensuring adherence to standards, best practices, and framework patterns.
  • Break down complex features into well-defined technical tasks with clear acceptance criteria.
  • Provide technical guidance on integration patterns, data modeling, error handling, and testing strategies.
  • Identify knowledge gaps and provide training on framework capabilities, domain context, and coding standards.
  • Monitor 3PL team velocity, code quality, and escalate blockers or quality concerns.
  • Ensure 3PL deliverables meet production readiness criteria before merge.
  • Implement monitoring, logging, and alerting for features you deliver.
  • Ensure services meet SLOs for latency, availability, and error rates.
  • Follow secure coding practices: input validation, secrets handling, PII protection, OAuth2 flows.
  • Partner with the Lead Software Engineer on service architecture and technical decisions.
  • Collaborate with product owners and business analysts to refine requirements and clarify acceptance criteria.
  • Work with QA engineers to define test plans and reproduce/fix defects.
  • Coordinate with the core framework team to leverage new capabilities or report issues.
  • Represent the team in technical design discussions and cross-service integration planning.
  • Contribute to team knowledge base, runbooks, and technical documentation.

Requirements

Do you have experience in Team development?, * 5+ years professional software development experience with Java/Spring Boot or similar enterprise frameworks.

  • Proven hands-on experience building REST APIs and microservices in production environments.
  • Strong coding skills with ability to write clean, performant, maintainable code.
  • Experience leading or mentoring offshore/contractor teams in a player-coach capacity.
  • Deep understanding of REST API design, JSON, OpenAPI specifications, and API versioning.
  • Proficiency with Spring Boot ecosystem: Spring Security, Spring Data, Spring Cloud.
  • Experience with distributed systems concepts: circuit breakers, retries, caching, eventual consistency.
  • Hands-on experience with Git, CI/CD pipelines, Docker, and Kubernetes deployments.
  • Strong code review skills with ability to provide actionable, constructive feedback.
  • Excellent written and verbal communication skills for guiding distributed teams across time zones.

Nice to Have:

  • Experience integrating with mainframe systems (z/OS, CICS, MQ) or legacy enterprise platforms.
  • Familiarity with CIS platforms (MACSS, GigaWatt) or utility industry domain knowledge.
  • Background with Kafka event-driven architecture, CDC patterns, or event sourcing.
  • Experience with Redis caching, Oracle databases, and SQL query optimization.
  • Knowledge of OAuth2/OIDC, API gateways (Azure APIM), and API security best practices.
  • Familiarity with observability tools: Splunk, Dynatrace, Prometheus, Grafana, Jaeger.
  • Experience with Resilience4j or similar fault tolerance libraries.
  • Previous experience leading offshore development teams in India, Latin America, or Eastern Europe.
  • Background working in Agile/Scrum environments with distributed teams.

Desired Certified Credentials

  • Oracle Certified Professional, Java SE Programmer
  • Certified Kubernetes Application Developer (CKAD)
  • Spring Professional Certification

Technical Environment

  • Languages/Frameworks: Java 21+, Spring Boot 3.X, Gradle
  • Architecture: Microservices, REST APIs, event-driven patterns
  • Cloud/Infrastructure: Azure, Kubernetes, OpenShift, Helm
  • Integration: z/OS Connect, GigaWatt REST APIs, Kafka, Oracle GoldenGate CDC, SFTP
  • Data Stores: Oracle, Redis, Kafka
  • Observability: Splunk, Dynatrace, Prometheus, Grafana, Jaeger
  • Security: OAuth2, Azure Key Vault, Azure APIM
  • DevOps: GitLab/Jenkins, Docker, Helm charts, blue/green deployments

What We're Looking For:

Education requirements are listed below:

  • Bachelor's degree in computer science, engineering, or related technical field is required.

Work Experience requirement listed below:

  • 8 years of relevant work experience is required. An equivalent combination of education and related experience may be considered.

Benefits & conditions

Base Salary from $116,255.00 - $151,132.50/year. In addition to a competitive compensation, AEP offers a unique comprehensive benefits package that aims to support and enhance the overall well-being of our employees.

About the company

At AEP, we're more than just an energy company - we're a team of dedicated professionals committed to delivering safe, reliable, and innovative energy solutions. Guided by our mission to put the customer first, we strive to exceed expectations by listening, responding, and continuously improving the way we serve our communities. If you're passionate about making a meaningful impact and being part of a forward-thinking organization, this is the company for you!

Apply for this position