What are the responsibilities and job description for the Senior Software Engineer position at Tech Brains Solutions, Inc.?
Position: Senior Software Engineer
Location: Annapolis, MD | Long term role
The focus areas include event-driven design, Spring Boot, microservices architecture, Kubernetes, React, Elastic search, and either RabbitMQ or Kafka.
Scope of work:
Minimum qualifications:
Maaster's/Bachelor’s degree in computer science, or a related field.
Ability to:
Knowledge of:
Location: Annapolis, MD | Long term role
The focus areas include event-driven design, Spring Boot, microservices architecture, Kubernetes, React, Elastic search, and either RabbitMQ or Kafka.
Scope of work:
- Design and Development
- Develop microservices using Spring Boot.
- Create responsive user interfaces using React. Apply event-driven design principles to build scalable and resilient applications.
- Collaborate with cross-functional teams to design and implement software solutions.
- Message Brokers
- Implement message producers and consumers.
- Work with RabbitMQ for message queuing and event streaming. If experience is in Kafka, understand the architectural differences between RabbitMQ and Kafka.
- Deployment and Infrastructure
- Monitor and troubleshoot production systems.
- Optimize application performance and scalability.
- Deploy microservices to Kubernetes clusters, utilizing CI/CD pipeline.
- Quality Assurance
- Conduct system testing and debugging activities.
- Write unit tests with a goal of 85% coverage and participate in peer code reviews.
- Documentation and Communication
- Design shall include sequence diagram for major use cases.
- Document technical specifications, architecture, and design decisions.
- Collaborate with product managers, designers, and other engineers to define requirements and deliverables.
- Reporting
- A weekly report communicating project progress and status. Will provide the reporting format to the Successful Proposed Resource.
- Resource will report 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.
Minimum qualifications:
Maaster's/Bachelor’s degree in computer science, or a related field.
- Front-end utilizing React and/or Angular.
- RabbitMQ or Kafka for message queuing.
- Elastic search.
Ability to:
- Analyze complex technical challenges and propose effective solutions.
- Excellent verbal communication skills
Knowledge of:
- The use of design patterns.
- Kubernetes for container orchestration.
- RESTful APIs and web services. Excellent verbal communication skills Proficiency in event-driven design principles.