Senior Java Developer
Job title: Senior Java DeveloperLocation: Texas (Onsite)Employment Type: Full-time (W2 only, No C2C)Experience: 10+ YearsJob Summary: We are seeking a highly experienced Java Developer with 10+ years of professional experience in designing, developing, and implementing scalable enterprise-level applications. The ideal candidate will have strong expertise in Java, Spring Framework, Microservices Architecture, RESTful API development, and cloud-based technologies. The candidate will work closely with cross-functional teams to build high-performance, secure, and scalable applications while following modern Agile and DevOps practices.Key Responsibilities:Design, develop, and maintain scalable enterprise applications using Java, Spring Boot, Spring MVC, and the Spring Framework, ensuring high performance, reliability, and maintainability.Develop RESTful APIs and backend services using Spring Boot, Spring Web, and Microservices Architecture, enabling seamless integration between distributed systems and applications.Implement object-oriented programming (OOP) principles, SOLID design principles, and design patterns to build modular, reusable, and maintainable application architectures.Develop microservices-based applications and enable service communication using REST APIs, Spring Boot, and messaging technologies such as Apache Kafka or RabbitMQ.Design and implement database-driven applications using SQL and NoSQL databases such as Oracle, MySQL, PostgreSQL, SQL Server, or MongoDB, including writing optimized SQL queries and stored procedures.Implement data access layers using Hibernate, JPA, and Spring Data, ensuring efficient database interaction and data management.Implement application security using Spring Security, OAuth2, JWT authentication, and role-based access control (RBAC) to ensure secure system access.Develop and execute unit testing and integration testing using JUnit, Mockito, and other testing frameworks to ensure high code quality and system reliability.Build and manage applications using build tools such as Maven and Gradle, enabling automated builds and dependency management.Integrate applications with CI/CD pipelines using Jenkins, GitHub Actions, GitLab CI, or Azure DevOps to automate build, testing, and deployment processes.Deploy and manage applications using containerization technologies such as Docker and Kubernetes, supporting scalable and cloud-native deployments.Integrate applications with cloud platforms such as AWS, Microsoft Azure, or Google Cloud Platform, utilizing cloud services for scalability, monitoring, and deployment.Utilize version control systems such as Git, GitHub, Bitbucket, or GitLab to manage source code and collaborate with distributed development teams.Monitor, troubleshoot, and optimize application performance through logging, debugging, and performance tuning techniques.Work in Agile/Scrum environments, participating in sprint planning, code reviews, backlog refinement, and continuous improvement initiatives.Mentor junior developers, perform code reviews, and contribute to software architecture design, development standards, and engineering best practices.Technical Skills:Programming Languages: Java, Core JavaFrameworks: Spring Boot, Spring MVC, Spring Framework, Spring Data, Hibernate, JPAArchitecture: Microservices Architecture, RESTful APIs, Design Patterns, Distributed SystemsDatabases: Oracle, MySQL, PostgreSQL, SQL Server, MongoDBMessaging Technologies: Apache Kafka, RabbitMQTesting Frameworks: JUnit, Mockito, SeleniumBuild Tools: Maven, GradleVersion Control: Git, GitHub, Bitbucket, GitLabCI/CD Tools: Jenkins, GitHub Actions, GitLab CI, Azure DevOpsCloud Platforms: AWS, Microsoft Azure, Google Cloud PlatformContainerization: Docker, KubernetesOperating Systems: Linux, WindowsMethodologies: Agile, Scrum, DevOps