We are hiring for a Senior Software Engineer with experience in event-driven design, Spring Boot, microservices architecture, Kubernetes, React, Elastic search, and either RabbitMQ or Kafka. This is a hybrid position, so you will need to report to the office 2 days per week and can work remotely 3 days per week. Therefore, this individual needs to live in the Maryland / DC area. Working hours are Monday through Friday, 8 : 00AM to 4 : 30PM EST. Sponsorship is not available for this position.
Primary Responsibilities
You would be responsible for the following :
Design and Development
Collaborate with cross-functional teams to architect, design, and implement enterprise software solutions.
Apply event-driven architecture principles to develop scalable, resilient, and loosely coupled applications.
Develop microservices using Spring Boot and associated Spring frameworks.
Build response and maintainable user interfaces using React.
Provide strong technical expertise in PrimeFaces 6.0 and above, including component usage, customization, and integration within Java Server Faces (JSF) applications.
Message Brokers
Implement message queuing and event streaming using RabbitMQ.
When experience is based on Kafka, demonstrate understanding of architectural and operational differences between Kafka and RabbitMQ.
Develop message producers, consumers, routing logic, and related integration components.
Deployment and Infrastructure
Deploy microservices to Kubernetes clusters using automated CI / CD pipelines.
Monitor, diagnose, and troubleshoot production systems to ensure reliability and uptime.
Perform performance tuning and scalability optimization across application and infrastructure layers.
Quality Assurance
Write unit tests with a target of 85% or greater code coverage.
Participate in peer code reviews to enforce coding standards and best practices.
Conduct system testing, debugging, and validation activities.
Documentation and Communication
Prepare technical specifications, architecture documentation, and design decision records.
Produce sequence diagrams for major use cases as part of design deliverables.
Collaborate with product managers, designers, and engineering teams to refine requirements and ensue alignment on deliverables.
Reporting
A weekly report communicating project progress and status. The AOC will provide the reporting format to the Successful Proposed Resource.
Activity on a weekly basis to communicate progress made on the programs / projects.
Weekly time reporting on JIS provided forms, and any additional reports as assigned by the supervising manager.
Required Experience :
Front-end utilizing React and / or Angular.
RabbitMQ or Kafka for message queuing.
Elastic search.
Ability to :
i. Analyze complex technical challenges and propose effective solutions.
ii. Excellent verbal communication skills
Knowledge of :
i. The use of design patterns.
ii. Kubernetes for container orchestration.
iii. RESTful APIs and web services.
Excellent verbal communication skills
Proficiency in event-driven design principles.
Prefered Experience :
Eight (8) or more years core java development.
Four (4) or more years software development using Spring Boot and associated Spring frameworks.
Four (4) or more years building interfaces utilizing React.
Four (4) or more years with the implementation of message queuing and event streaming using RabbitMQ.
Education :
Bachelors degree required
Senior Software Engineer • Baltimore, Maryland, United States