Senior Software Engineer

Overview

Remote
Depends on Experience
Contract - W2
Contract - 12 Month(s)

Skills

Java
Python
Spring Framework
API
RESTful
Amazon Web Services
Testing
Version Control
Build Tools
Continuous Delivery
Continuous Integration
Nexus
DevOps
Infrastructure as Code

Job Details

Job Overview:
Our client is seeking a highly skilled Senior Software Engineer with at least 8 years of experience in the IT industry to join their team. The ideal candidate will be proficient in Java, Spring Boot, Python, and AWS, with a strong foundation in building scalable APIs, deploying robust CI/CD pipelines, and maintaining secure and high-performance applications.

Key Responsibilities:

  • Develop and maintain applications using Java, Spring Boot, and Python with clean, efficient, and maintainable code.
  • Design and implement RESTful APIs, ensuring proper documentation, security, and testing.
  • Integrate APIs with AWS services using AWS SDKs (e.g., S3, Lambda, EC2, SQS, RDS, etc.).
  • Conduct code reviews and improve overall application architecture.
  • Identify and remediate vulnerabilities in code and third-party libraries.
  • Create and execute unit, integration, and automated tests using modern testing frameworks.
  • Maintain and enhance CI/CD pipelines for automated builds, tests, and deployments.
  • Work with SQL databases like Oracle and PostgreSQL for data modeling, query optimization, and integrity assurance.
  • Ensure performance and scalability through debugging and profiling tools.
  • Collaborate with DevOps and infrastructure teams for automated deployment using tools like Terraform and CloudFormation.

Required Skills & Experience:

  • Programming Languages: Strong proficiency in Java and Python.
  • Frameworks: Expertise in Spring Boot, Spring MVC, Spring Data, Spring Security, and related modules.
  • API Development: Hands-on experience designing RESTful services, using tools like Swagger UI and Postman for API testing.
  • AWS Services: Practical knowledge of S3, EC2, Lambda, RDS, SQS, SNS, Secret Manager, ECS, ECR, CloudWatch, System Manager, and use of AWS SDKs.
  • Testing Tools & Methodologies: Familiarity with TDD/BDD, frameworks like JUnit, PyTest, Mockito, Selenium-Cucumber, and load testing tools like JMeter, Gatling, LoadRunner, SauceLabs.
  • Version Control: Expertise in Git and repository management.
  • Build Tools: Hands-on with Maven, managing dependencies, packaging with JARs, and resolving transitive dependencies.
  • Security & Code Quality: Experience using Nexus IQ, resolving vulnerabilities in Java/third-party libraries (e.g., Log4j).
  • DevOps: Exposure to CI/CD tools such as Jenkins, GitLab CI, Docker, and Terraform.
  • Infrastructure as Code (IaC): Familiarity with Terraform or AWS CloudFormation for automated infrastructure management.
  • Database: Working knowledge of SQL, including Oracle and PostgreSQL.

Preferred Qualifications:

  • AWS certification (Developer Associate or higher) is a plus.
  • Experience with microservices architecture and container orchestration.
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.