Sr Software Engineer
ACI Worldwide · Norcross, GA · 2 wk ago
HybridInformation TechnologyFull-time
Job Responsibilities
- Define and validate non-functional requirements - performance, scalability, throughput, latency, availability/HA, and data integrity - in partnership with Product, Architecture, and feature teams
- Design, build, and maintain test suites using JMeter (or evolving tooling)
- Load tests, stress tests, soak tests, endurance tests, and capacity benchmarks
- Execute tests against realistic payment workloads modeled on production transaction patterns (wire transfers, instant payments, A2A flows)
- Analyze results to identify bottlenecks, regressions, resource constraints, failover gaps, and data consistency risks across services, messaging layers, and data stores
- Validate availability and resilience — test failover behavior, recovery times, and degradation characteristics under fault conditions
- Verify data integrity under load — confirm that transactions, state changes, and downstream effects remain consistent at scale
- Produce clear, professional reports with findings, visualizations, and recommendations
- Support go-live readiness by confirming systems meet NFR criteria before customer onboarding milestones
- Explore future-state integration of performance validation into CI/CD pipelines as the platform and testing practices mature
- Research and resolve reported systems software problems efficiently and accurately while adhering to internal software management standards and procedures
- Maintain detailed knowledge of software, underlying network and system software, and dependencies
- Provide guidance and subject matter expertise to the development organization
- Perform other duties as assigned
Knowledge, Skills and Experience required for the job
- 5+ years of experience in software engineering, performance engineering, QA engineering, or a similar hands-on technical role
- Demonstrated experience designing and executing performance and load tests for distributed systems
- Proficiency with JMeter or comparable performance testing tools (Gatling, k6, Locust)
- Strong analytical skills — ability to interpret test data, isolate bottlenecks across services, and translate findings into clear engineering recommendations
- Proficiency in Java and familiarity with profiling and tuning JVM-based applications
- Strong written communication — you'll produce reports consumed by engineers, product managers, leadership, and customers
- Comfort navigating complex, multi-service architectures to understand system behavior under load
- Bachelor's degree in computer science or related field or equivalent software development experience
- Experience with observability tooling (OpenTelemetry, Grafana) for correlating application metrics with test outcomes
- 5 years software development experience
Preferred Knowledge, Skills and Experience needed for the job
- Experience validating availability, failover, and resilience characteristics (not just throughput/latency)
- Experience assessing data integrity and consistency under concurrent load
- Familiarity with Kubernetes and performance considerations in containerized environments (resource limits, scaling behavior, pod disruption)
- Experience with event-driven / choreographed microservice patterns and messaging systems (e.g., NATS or similar)
- Experience with MongoDB performance analysis (query profiling, indexing strategies, write concern trade-offs, replication lag)
- Background in payments, fintech, or high-availability transaction processing where latency and throughput SLAs are critical
- Familiarity with security testing or compliance validation practices
- Experience producing customer-facing technical documentation (sizing guides, performance characterizations, capacity recommendations)