What are the responsibilities and job description for the Senior Software Engineer position at IT Resource Hunter?
Job Role - Senior Software Engineer
Location- Maryland
Employment Type: Full -time, Hybrid (3 days onsite and 2 days remote)
It’s W2 position.
Job Description
As a Senior Software Engineer, you will be responsible for designing and developing innovative software solutions, working closely with cross-functional teams, and ensuring the scalability and performance of applications. This position is hybrid, with two days of remote work and three days on-site in Maryland.
Key Responsibilities
Location- Maryland
Employment Type: Full -time, Hybrid (3 days onsite and 2 days remote)
It’s W2 position.
Job Description
As a Senior Software Engineer, you will be responsible for designing and developing innovative software solutions, working closely with cross-functional teams, and ensuring the scalability and performance of applications. This position is hybrid, with two days of remote work and three days on-site in Maryland.
Key Responsibilities
- 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 experienced with 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 using 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 and document sequence diagrams 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
- Provide weekly reports on project progress and status
- Report activity weekly, tracking progress on programs/projects
- Submit weekly time reports and any additional reports as required
- Experience with React and/or Angular for front-end development
- Experience with RabbitMQ or Kafka for message queuing
- Familiarity with ElasticSearch
- Ability to analyze and solve complex technical challenges
- Strong verbal communication skills
- Knowledge of design patterns
- Familiarity with Kubernetes for container orchestration
- Experience working with RESTful APIs and web services
- Proficiency in event-driven design principles
- Bachelor's degree in Computer Science or a related field