JOB TITLE: Senior Software Engineer (Java Full-Stack Developer)

DEPARTMENT: Software Development

REPORTS TO: Project Director

PURPOSE:

We are seeking a highly skilled Software Engineer to join our team and contribute to the development and maintenance of high-quality, scalable web applications. The ideal candidate will have extensive experience in both front-end and back-end development, with a strong emphasis on Java technologies. This role requires a collaborative mindset, problem-solving skills, and the ability to work in a fast-paced, agile environment.

KEY RESPONSIBILITIES:

  • Application Development and Design: Translate company vision into a web application through clean, maintainable code. Design next-generation models for services, ensuring high-quality application development. Manage the full lifecycle of application services, from ideation to execution, monitoring, and support. Develop new services, incorporating best practices and avoiding common mistakes.
  • Optimization and Performance: Optimize applications for maximum speed and scalability. Monitor and enhance application performance, ensuring a seamless user experience.
  • Code Quality and Testing: Ensure code quality through automated testing and continuous integration. Perform code reviews and provide constructive feedback to team members. Write unit and integration tests, ensuring robust software solutions.
  • Technical Support and Documentation: Provide technical support to team members and troubleshoot/debug complex issues. Develop and maintain comprehensive technical documentation.
  • Vision Translation: Convert the company vision into a functional web application through efficient coding practices.
  • Service Design: Contribute to the design and development of next-generation application models.
  • Lifecycle Management: Oversee the entire evolution process of application services.
  • Collaboration and Communication: Collaborate with cross-functional teams, including other engineers, designers, and product managers. Participate in the design and architecture of new features and applications. Contribute to the overall software development lifecycle and assist in the deployment and release of new features.

QUALIFICATIONS, SKILLS, AND EXPERIENCE:

  • At least Bachelor’s degree in Computer Science, Information Technology, Computer Engineering, or a related field.
  • Proven 3+ years of experience as a Full Stack Java Developer or similar role.
  • Strong proficiency in Java and related frameworks (e.g., Spring, Hibernate).
  • Experience with front-end technologies (HTML, CSS, JavaScript) and JavaScript frameworks (Angular, React, Vue.js).
  • Familiarity with database management systems (e.g., MySQL, PostgreSQL, MongoDB).
  • Expertise in version control systems (e.g., Git) and CI/CD pipelines (e.g., Jenkins, Docker).
  • Excellent communication and teamwork abilities, with the ability to work in an agile development environment.
  • Knowledge of web security best practices, RESTful APIs, and cloud platforms (AWS, Azure, Google Cloud).
  • Experience with containerization and orchestration tools (e.g., Kubernetes) and automated testing frameworks (e.g., JUnit, Selenium).