Project Overview
The Developers will be responsible for designing, coding, testing, and maintaining software applications.
These applications are often high-volume mission critical systems that require careful consideration of design challenges to ensure reliability, scalability, and security in dynamic computing environments.
Scope of Work
Analysis and Planning:
Collaborate with stakeholders, including business analysts, business units and project managers, to understand the requirements and goals of the software application.
Participate in the planning and design phases, providing input on feasibility, technical requirements, and potential challenges.
Design and Architecture:
Create system architecture and design documents based on the requirements.
Define the structure of the application, including components, modules, and interactions.
Choose appropriate technologies, frameworks, and development tools based on project requirements.
Coding and Implementation:
Write, test, and maintain code that meets design specifications and follows best practices.
Implement features and functionality in accordance with project timelines.
Collaborate with other developers and teams to integrate components and resolve dependencies.
Implementation of microservices
Testing:
Develop and execute unit tests to ensure the reliability and functionality of individual components.
Conduct system testing to validate the integration of different modules.
Identify and fix bugs or issues through debugging and troubleshooting.
Documentation:
Create and maintain technical documentation for the codebase, APIs, and overall system architecture.
Document coding standards and best practices for the development team.
Provide documentation for end-users if applicable.
Collaboration:
Work closely with cross-functional teams, including quality assurance (QA), product management, and UI/UX designers.
Participate in code reviews to ensure code quality and adherence to coding standards.
Collaborate with other developers to address challenges and share knowledge.
Maintenance and Support:
Provide ongoing support and maintenance for deployed applications.
Address and resolve issues reported by users or identified through monitoring.
Update and upgrade applications to meet changing requirements and address security vulnerabilities.
Security:
Implement security best practices to safeguard applications from potential threats.
Regularly update software components and libraries to address security vulnerabilities.
Communication:
Communicate effectively with team members, project managers, and other stakeholders.
Provide status updates, progress reports, and participate in team meetings.
Qualifications and ExperienceBackend Developers
Bachelor's Degree in Computer Science, IT, Engineering, or related Course
5 Years Minimum Working Experience.
Demonstrated experience with Data Structures & algorithms.
Professional Qualifications in Java, DevOps, Cloud Technologies.
Experience in development in following technologies: Java 1.8+, Spring Framework, Apache Camel, Spring Boot, Restful Services (JAXRS), REST and SOAP API, Java Testing Frameworks (JUnit, Mockito, Power Mockito), Microservices, Understanding of Cloud infrastructure, JPA/JDBI, OpenShift, Kubernetes.
Linux Operating system command line.
Demonstrated experience with SQL & No SQL Databases.
Good knowledge of CI & CD tools e.g., GIT, Jenkins, Azure DevOps.
Experience building Micro services, containerization & container orchestration with Kubernetes/OpenShift.
Frontend Developers
Bachelor's Degree in Computer Science, IT, Engineering, or related Course
5 Year's Minimum working Experience as a Front-end developer
A portfolio demonstrating proficiency in JavaScript and frontend frameworks React, Angular.