Logo
ZipRecruiter

Senior Software Engineer

ZipRecruiter, St Louis, Missouri, United States

Save Job

Job Description

We’re Looking For A Senior Software Engineer!

Our client is a leading modern product consultancy and digital innovation firm with a mission to make a dent in the digital economy. It is currently engaged by Fortune 50 enterprises to bring their next of digital products and platforms to market. It has helped hundreds of teams launch mission-critical products that have created a positive impact worth billions of dollars.

What You Will Do:

Lead, design, develop and test Web and Cloud- applications and work with fellow Software Engineers and Product Managers to navigate the discussion and strategy in architecting web and cloud platforms

Own end-to-end architectural assessments and delivery of our client platforms

Define, architect and break out epics/features for others, while maintaining a sense of the whole picture

Work in a cross-functional agile team to deliver working software incrementally

Help with the growth of the Cloud Practice by collaborating on the interviewing pipeline, hosting tech talks and workshops, identifying industry trends to discuss, and participating in practice activities

Mentor the less-experienced members of the team, interview potential engineers for your own and other teams, have an opportunity to help influence the direction of the project, and showcase your technical skills and knowledge in company tech talks

Research and adopt new programming , frameworks, and libraries to enhance development speed and security

Maintain a deep understanding of language-specific coding bugs, smells, and vulnerabilities

Continuously update code scanning profiles to minimize technical debt and ensure high-quality code.

Development Practices

Define, document, and coach the team on best practices for development, including branching strategies, peer reviews, library usage, logging, and error handling

Champion test-driven development (TDD) to maintain robust and reliable software.

Enforce coding guidelines and scanning rules across the project to ensure consistency and maintainability.

Patterns and Frameworks

Conduct technical reviews of application code and dependencies to identify anti-patterns and drive continuous refactoring

Promote the use of design patterns and architectural best practices in a microservices environment.

Technical Leadership

Design and develop microservices using hexagonal architecture principles

Build and maintain RESTful APIs, ensuring secure and efficient communication

Implement and manage asynchronous messaging systems using Kafka for inter-service communication.

Database Management

Ensure secure, reliable, and efficient database interactions

Oversee schema design, query optimization, and data migration strategies

What You Bring To The Table

7+ years of professional experience in microservices-based cloud- development within an enterprise-level domain

3+ years of experience leading teams

Strong hands-on experience architecting and implementing modern Java-based applications. Advanced features like lambda expressions, Stream API, CompletableFuture, Virtual Threads, Concurrency APIs etc. Java 21 experience .

Experienced with implementing Microservices using Spring Boot, Spring Webflux, Starter Web, JPA, Spring Security, Spring Boot, Actuator Kafka, Redis

2+ years with AWS Experience (EKS, EC2, S3, RDS, SQS, SNS, DynamoDb, Lambda)

Experience with Restful APIs and hexagonal architecture.

Knowledge of relational database systems – ex. RDS (Oracle) or Oracle on Amazon EC2

Experience using container & serverless architectures (Docker, Kubernetes, AWS Lambda, AWS ECS)

Proficient with Test Driven and Domain Driven Development (TDD / DDD), including using automated test frameworks (e.g., JUnit, Cypress, WireMock, PowerMock, ArchUnit)

You are an experienced user of one or more Application Lifecycle Management tools (e.g., Jira).

Experienced with DevOps – creating CI/CD tools and pipelines.

Solid verbal and written communication and consultant/client-facing skills are a must. As a true consultant, you are a self-starter who takes initiative.

Tech Skills:

Coding - Core and Advance Java tech stack (JDK8 or higher)

Advance knowledge and practical experience working with Spring boot, relational database, caching solutions

Practical experience with various test coverage like unit testing, functional testing, integration testing and contract testing.

Practical experience working through requirements, design, implementation and testing around

integration with external systems/APIs

High Availability

Scaling

Resiliency

Ensuring better maintenance of the system

Release process

Being able to troubleshoot issues in higher and lower environments independently

Being able to learn and adopt to new project/domain quickly

Capable of working through the requirement at domain level independently as an SME for given feature/epic

Capable of providing strong code review comments to ensure on quality

Professional Skills:

Highly motivated individual who always look for engineering excellence and no mediocrity in the performance

Good personal influence

Being able to ask questions proactively in elaboration or team setup related sessions

Being able to identify area of improvements in the application and drive/lead through it

Proactively reviews code and provide suggestions for improvement