Full Stack Java Developer (4+ Years of Experience)
Role Overview:
As a Full Stack Java Developer, you will be responsible for developing both the front-end and back-end components of web applications. Your role will involve working with the latest Java technologies, modern frameworks, and cloud-based solutions to build high-quality, performant, and maintainable software. You will collaborate closely with other developers, product managers, and designers to deliver robust software solutions.
Key Responsibilities:
- Full Stack Development: Design, develop, and maintain both front-end and back-end of web applications using Java, JavaScript, and modern frameworks such as Spring Boot, React, Angular, or Vue.js.
- Backend Development: Build and maintain RESTful APIs and microservices using Java and frameworks like Spring Boot, Hibernate, or JPA.
- Frontend Development: Develop responsive user interfaces using front-end technologies like JavaScript, HTML5, CSS3, and frameworks like React, Angular, or Vue.js.
- Database Management: Design and manage relational and NoSQL databases (e.g., MySQL, PostgreSQL, MongoDB) and write optimized SQL queries.
- Integration: Integrate third-party APIs and external services, and ensure seamless communication between front-end and back-end systems.
- Code Quality & Best Practices: Write clean, maintainable, and efficient code while adhering to best practices and design patterns (e.g., SOLID principles).
- Testing & Debugging: Conduct unit testing and integration testing to ensure high code quality. Debug and troubleshoot issues across the stack.
- Agile Methodology: Participate in Agile development cycles (Scrum, Kanban) and collaborate with cross-functional teams for sprint planning, stand-ups, and code reviews.
- DevOps & Deployment: Collaborate with DevOps teams to deploy and maintain applications using CI/CD pipelines and cloud-based infrastructure (AWS, Azure, etc.).
- Performance Optimization: Continuously improve the performance of applications, ensuring scalability and responsiveness.
- Documentation: Maintain clear and comprehensive documentation for code, technical designs, and system architectures.
Skills & Qualifications:
- Experience: 4+ years of professional experience as a Full Stack Java Developer, with a proven track record in both front-end and back-end development.
- Java Expertise: Proficiency in Java, including experience with Java 8 or newer features, Spring Framework (Spring Boot, Spring MVC, Spring Security), and Hibernate.
- Frontend Technologies: Strong experience with front-end JavaScript frameworks like React, Angular, or Vue.js. Solid understanding of HTML5, CSS3, and responsive design principles.
- Database Management: Strong experience with relational databases (MySQL, PostgreSQL) and NoSQL databases (MongoDB, Cassandra). Experience in writing optimized SQL queries and understanding database design.
- API Development: Experience in building RESTful APIs, understanding of JSON, and knowledge of API documentation tools like Swagger.
- Version Control: Proficiency with Git for version control, familiarity with Git workflows (e.g., feature branching, pull requests).
- Testing: Experience with test-driven development (TDD), unit testing frameworks (JUnit, TestNG), and tools like Selenium for front-end testing.
- Cloud Platforms: Familiarity with cloud platforms (AWS, Azure, or Google Cloud) and deployment using CI/CD pipelines.
- Containerization: Experience with container technologies such as Docker and container orchestration tools like Kubernetes is a plus.
- Problem-Solving: Strong analytical and problem-solving skills, with an ability to troubleshoot issues in complex systems.
- Communication: Excellent verbal and written communication skills, capable of collaborating effectively with both technical and non-technical stakeholders.
Preferred Qualifications:
- Degree: Bachelor’s or Master’s degree in Computer Science, Software Engineering, or related field.
- Agile Certifications: Scrum Master or other Agile-related certifications.
- Experience with Microservices: Familiarity with microservices architecture and frameworks like Spring Cloud or Docker.
- CI/CD Tools: Experience with Jenkins, GitLab CI, or other continuous integration tools.