Project Scope: The AOC is seeking proposals from prospective Offerors to provide one (1) Senior Software Engineer. The Senior Software Engineer will play a critical role in designing developing and maintaining two of the AOCs primary applications being rewritten. The focus areas include event-driven design Spring Boot microservices architecture Kubernetes React Elastic search and either RabbitMQ or Kafka.
Roles/Responsibilities:
Offeror proposed resource(s) shall be responsible for the following:
- Design and Development
- Collaborate with cross-functional teams to design and implement software solutions.
- Apply event-driven design principles to build scalable and resilient applications.
- Develop microservices using Spring Boot.
- Create responsive user interfaces with React.
- Message Brokers
- Work with RabbitMQ for message queuing and event streaming.
- If experience is in Kafka understand the architectural differences between RabbitMQ and Kafka.
- Implement message producers and consumers.
- Deployment and Infrastructure
- Deploy microservices to Kubernetes clusters utilizing CI/CD pipeline.
- Monitor and troubleshoot production systems.
- Optimize application performance and scalability.
- Quality Assurance
- Write unit tests with a goal of 85% coverage and participate in peer code reviews.
- Conduct system testing and debugging activities.
- Documentation and Communications
- Document technical specifications architecture and design decisions.
- Design shall include sequence diagram for major use cases.
- Collaborate with product managers designers and other engineers to define requirements and deliverables.
- Reports (in a JIS prescribed format)
- Resource will report activity on a weekly basis to communicate progress made on the programs/projects.
- A weekly report communicating project progress and status.
- Weekly time reporting on JIS providing forms and any additional reports as assigned by the supervising manager
Mandatory Skills:
- Bachelors degree in computer science or a related field (as determined by the AOC).
- Experience
- Front-end experience utilizing React and/or Angular.
- Either RabbitMQ or Kafka for message queuing.
- Elastic search experience is a plus.
- Knowledge
- Strong knowledge of the use of design patterns.
- Familiarity with Kubernetes for container orchestration.
- Familiarity with RESTful APIs and web services.
- Proficiency in event-driven design principles.
- Ability to analyze complex technical challenges and propose effective solutions.
- Excellent verbal communication skills
Desirable Skills: N/A