Key Roles and Responsibilities :
- Develops applications that effectively accomplish client objectives and user needs
- Designs and writes code for applications and maintain applications databases
- Analyzes and edits existing software applications to improve and optimize functionality, fix problems, and enable their use on new hardware platforms
- Remodels and adapts applications as needed to optimize performance
- Identifies specific client needs and preferences related to the application
- Tests applications extensively to ensure they are error and bug-free
- Installs applications and acts as technical advisor
- Communicates with relevant internal technical stakeholders to obtain information on project limitations, performance requirements, and interfaces
- Consults with clients in the design phase to determine client needs
- Produces software documentation following company software process and templates
- Participates in software product review meetings and team meetings
Knowledge, Skills and Attributes :
- Hands-On expertise around both front-end and back-end coding languages, development frameworks and third-party libraries.
- Experience with Java / J2EE 8 or better with a good understanding of the core language and commonly used libraries such as Spring Framework.
- Experience with SOA Web services, RESTful services and GraphQL.
- Thorough understanding of ReactJS, React Native and / or Angular (UI / UX) and its core principles, HTML, CSS, JavaScript.
Familiarity with modern front-end technologies and state management libraries.
- Familiarity with databases (e.g. MySQL, MongoDB, DynamoDB etc.), web servers (e.g. Apache) and UI / UX design.
- Are familiar with modern development stack, e.g. Kotlin or Java 8+, TypeScript, React or Angular 2+, GraphQL, PostgreSQL, MERN
- Worked with source control like Git
- Understanding of CI / CD, rapid delivery on production
- Experience with one of the cloud platform like AWS, Azure etc.
- Understanding different Agile methodologies
- Ability to write quality unit and end to end tests; debug and optimize existing and new code.
Academic Qualifications and Certifications :
- Bachelor's degree or equivalent in computer science or software engineering or related
- Certification in various programming languages (Java, React, Angular, Kubernetes, etc.)
Required Experience :
- Software Applications Engineering, Software Development experience, or related work experience
- Kotlin or Java 8+, TypeScript, React, Angular 2+, GraphQL, PostgreSQL, MERN
- Project management experience and / or experience working in an Agile environment
Skills Summary
Agile Scrum Development, Application Development, C++ Programming Language, Design, Linux, Operating Systems (OS), Programming Languages, Python (Programming Language), Software Applications, Software Development
What will make you a good fit for the role?
Workplace type : On-site Working
On-site Working
Equal Opportunity Employer
NTT is proud to be an Equal Opportunity Employer with a global culture that embraces diversity. We are committed to providing an environment free of unfair discrimination and harassment.
We do not discriminate based on age, race, color, sex, religion, national origin, disability, pregnancy, marital status, sexual orientation, gender reassignment, veteran status, or other protected category