Senior Java Developer | Remote | Spring Framework & AWS Cloud Solutions
About the Position
As a Senior Java Developer, you will architect and implement robust backend systems that power our core business operations. Working within an agile environment, you'll collaborate with cross-functional teams to deliver high-performance, scalable, and maintainable code. Your technical expertise will directly influence our software architecture and implementation strategies across multiple projects.
Key Responsibilities
- Architect and develop sophisticated enterprise applications using Java 8 and Spring Framework 5.x/6.x with a focus on performance optimization.
- Implement database solutions utilizing Hibernate/JPA 2.2+ and relational databases such as PostgreSQL, MySQL, or Oracle.
- Design and maintain RESTful API services following industry best practices for security, scalability, and documentation.
- Deploy and manage applications within AWS cloud environment, leveraging services such as EC2, S3, RDS, Lambda, and CloudFormation.
- Conduct thorough code reviews to ensure software quality and provide mentorship to junior development staff.
- Collaborate with product stakeholders to translate complex business requirements into technical specifications and implementation plans.
- Troubleshoot and resolve intricate technical issues in production environments with minimal service disruption.
- Implement comprehensive automated testing strategies including unit, integration, and performance testing frameworks.
- Optimize application performance through profiling, monitoring, and strategic refactoring for enhanced efficiency.
- Participate actively in sprint planning, retrospectives, and other agile ceremonies to contribute to continuous improvement.
- Evaluate emerging technologies and recommend innovative solutions to enhance our technology stack.
Required Skills and Qualifications
- Minimum 5+ years of professional Java development experience with demonstrated expertise in enterprise applications.
- Strong command of Java 8 features including streams API, lambda expressions, functional interfaces, and concurrency patterns.
- Extensive experience with Spring Framework ecosystem, particularly Spring Boot 2.x/3.x, Spring MVC, and Spring Security.
- Proven expertise with Hibernate/JPA for robust object-relational mapping and efficient database operations.
- Demonstrated experience designing and developing RESTful APIs with proper versioning, authentication, and error handling.
- Working knowledge of AWS services for application deployment, monitoring, and infrastructure management.
- Proficiency with Maven for dependency management, build automation, and deployment processes.
- Strong understanding of SQL and relational database design principles including normalization, indexing, and query optimization.
- Experience with version control systems (Git) and collaborative development workflows.
- Conversational English proficiency for effective team communication and technical documentation.
- Self-motivation and discipline to work productively in a remote environment with minimal supervision.
- Analytical problem-solving mindset with meticulous attention to code quality and system architecture.
Nice to Have
- Experience with newer Java versions (Java 11 or 17) and their enhanced language features.
- Familiarity with microservices architecture patterns and implementation strategies.
- Knowledge of containerization technologies such as Docker and orchestration with Kubernetes.
- Experience implementing and maintaining CI/CD pipelines using tools like Jenkins, GitHub Actions, or GitLab CI.
- Understanding of reactive programming paradigms with Project Reactor or RxJava.
- NoSQL database experience with solutions like MongoDB, Cassandra, or DynamoDB.
- Performance tuning expertise for high-throughput Java applications in distributed environments.
- Advanced knowledge of Agile/Scrum methodology and team collaboration techniques.
- Experience with message brokers such as Apache Kafka or RabbitMQ for asynchronous processing.
- Cloud-native application development patterns and best practices.
Why Join Our Team
When you join our organization, you'll contribute to innovative technical solutions while enjoying the autonomy of remote work. We offer competitive compensation, professional development opportunities, and a collaborative culture that values technical excellence. As a Senior Java Developer, you'll tackle challenging projects that make meaningful impact on our business outcomes while maintaining the work-life balance that remote positions provide. Your expertise will be highly valued as we continue to evolve our technology landscape.