Responsibilities:
- Software Development: Collaborate with the development team to design and implement robust, scalable, and maintainable Java applications. Translate requirements into functional code, ensuring adherence to best coding practices and coding standards.
- Code Review and Quality Assurance: Participate in code reviews, offering constructive feedback to team members to ensure code quality, consistency, and performance optimization.
- Bug Fixing and Maintenance: Analyze and troubleshoot issues in existing applications, including bug fixing and addressing performance bottlenecks to maintain software integrity.
- Testing: Develop and execute unit tests and functional tests to verify the correctness of the code and validate application functionality.
- Collaboration: Work closely with cross-functional teams, including other developers, product managers, and quality assurance engineers, to ensure seamless product development and delivery.
- Technical Documentation: Create and maintain technical documentation, including design specifications, user manuals, and system architecture documents.
- Continuous Learning: Stay up-to-date with the latest industry trends, best practices, and emerging technologies in Java development to enhance personal and team knowledge.
- Performance Optimization: Identify and implement performance optimizations to ensure the efficiency and scalability of the Java applications.
- Deployment and Support: Participate in the deployment process and provide support during application releases and production issues as needed.
Required Skills and Qualifications:
- Java Development: Strong proficiency in Java programming with a deep understanding of core concepts, data structures, and algorithms.
- Object-Oriented Design: Demonstrated experience in object-oriented design principles and design patterns.
- Frameworks and Libraries: Familiarity with popular Java frameworks and libraries such as Spring, Hibernate, etc.
- Database Management: Experience working with databases (SQL or NoSQL) and proficiency in writing efficient database queries.
- Web Technologies: Knowledge of web technologies including HTML, CSS, JavaScript, and AJAX.
- Version Control: Proficiency with version control systems, such as Git.
- Problem-Solving Skills: Strong analytical and problem-solving abilities with a keen attention to detail.
- Team Player: Ability to work collaboratively in a team-oriented environment, as well as independently on individual tasks.
- Communication: Excellent communication skills, both verbal and written, with the ability to articulate technical concepts effectively.
- Education: Bachelor's degree in Computer Science, Software Engineering, or a related field.
Preferred (but not required) Skills:
- Experience with Agile/Scrum methodologies.
- Knowledge of RESTful API design and implementation.
- Familiarity with containerization technologies such as Docker.
- Experience with cloud platforms like AWS, Azure, or Google Cloud Platform.
- Familiarity with automated testing frameworks and continuous integration/continuous deployment (CI/CD) pipelines.
Join our dynamic team and contribute to the development of cutting-edge Java-based applications that have a meaningful impact on our clients and users!
Apply Now