Senior Software Engineer
- Compensation
- Not disclosed
- Location
- Draper, UT
- Work setup
- Not specified
- Seniority
- Senior
- Employment
- Not specified
- Experience
- 7+ years
- Category
- Software engineering
- Posted
Skills
Must have
- 7+ years of professional software engineering experience, with significant hands-on experience using Java.
- Strong experience designing, building, deploying, and operating large-scale distributed systems in production.
- Deep understanding of microservices, APIs, asynchronous processing, and distributed system design.
- Experience implementing event-driven architecture and asynchronous messaging patterns.
- Hands-on experience implementing application resilience patterns such as circuit breakers, retries, timeouts, bulkheads, and graceful degradation.
- Experience building high-availability, fault-tolerant systems.
- Strong understanding of application observability, including logging, metrics, monitoring, and distributed tracing.
- Experience with distributed tracing technologies such as OpenTelemetry or similar tooling.
- Experience building systems that support feature flags, controlled rollouts, experimentation, or A/B testing.
- Strong understanding of automated testing and building software that is designed to be testable.
- Experience troubleshooting complex production issues across multiple services.
- Strong communication skills and the ability to influence technical decisions across a team.
Full description
As a Senior Software Engineer, you will be a technical owner of key services supporting our customer application and decisioning platform.
This is a hands-on engineering role for someone who thrives in distributed systems and enjoys turning complex business and architectural requirements into clean, scalable, secure, and production-ready software.
You’ll help evolve our Java-based services, improve system resilience and observability, reduce unnecessary dependencies between services, and build technology that allows Clicklease to experiment and innovate quickly.
You won't just contribute code—you'll help shape how we build software.
What You'll Be Doing
Build & Own Critical Systems
- Design, build, test, deploy, and operate high-performing Java services that support mission-critical customer and decisioning workflows.
- Take technical ownership of critical services from design through production.
- Translate architectural direction into practical designs, reusable patterns, and high-quality code.
- Make thoughtful engineering decisions that balance performance, scalability, maintainability, reliability, and speed of delivery.
- Lead by example through strong engineering practices, code reviews, testing, documentation, and technical problem-solving.
Strengthen Our Distributed Architecture
- Help evolve tightly coupled systems toward cleaner, more scalable event-driven architectures.
- Establish clear service and domain boundaries that reduce unnecessary dependencies.
- Design systems that can scale as transaction volume, product complexity, and business requirements grow.
- Identify architectural weaknesses and proactively improve system performance and reliability.
Build for Resilience & Observability
- Implement proven resilience patterns including circuit breakers, bulkheads, retries, timeouts, and graceful degradation.
- Design for high availability and fault tolerance across mission-critical services.
- Establish and improve distributed tracing, logging, metrics, and application-level monitoring.
- Use tools such as OpenTelemetry to troubleshoot complex failures across distributed services.
- Help prevent vendor or downstream service failures from creating cascading impacts across the platform.
Enable Experimentation
- Build application architecture that supports runtime experimentation and A/B testing.
- Implement and manage feature flags, customer segmentation, and controlled rollouts.
- Instrument services so product and business teams can measure the impact of experiments.
- Help Clicklease move quickly while maintaining the engineering discipline required for financial technology.