Full Stack EngineerEngineering | Singapore, Singapore, Singapore
Essential Duties/Principal Responsibilities:
- Troubleshoot, debug and upgrade existing software
- Gather and evaluate user feedback
- Recommend and execute improvements
- Create technical documentation for reference and reporting
- Collaborate with internal teams to fix and improve products
- Participate in the development process from definition to deployment.
- Maintain and improve existing cloud-based applications, reducing costs and streamlining efficiency.
- Engineer code that is efficient, standard and well documented.
- Take on challenging tasks as needed with an eagerness to develop skills in new areas.
- Bring to the job excitement and work ethic on par for a startup technology firm.
- Ability to communicate effectively in writing and orally
Minimum Qualifications: Education, Experience, Skills, Abilities, License/Certification:
- Bachelor/Master in Computer Science or Electronics & Communication or related fields
- Good in fundamental computer science principles - Computer Algorithms, Architect and Networks
- Proven experience as a Software Developer or similar role
- Familiarity with Agile development methodologies
- Experience with software design and development in a test-driven environment
- Good knowledge of Microservices architecture/Service-Oriented architecture (Vert.X / Spring boot)
- Experience with one or more of: AWS, Java, J2EE, Spring MVC, Spring boot, Python, Docker, Jira, GIT, SQL and NoSQL databases (e.g. MongoDB)
- Previous Experience working as a react.js developer
- Knowledge of REACT tools including React.js, Webpack, Enzyme, Redux, and Flux
- Experience with user interface design
- Experience with browser-based debugging and performance testing software
- Experience working with REST services via AJAX
- Good to have Experienced in integrating with generic web services such as ESRI, ArcGIS, GoogleMaps, weather services, etc
- Good to have Experienced in Material UI or Ant Design
- Experience collaborating on interface definitions with tools such as Swagger or OpenAPI
- Ability to learn new languages and technologies and able to work independently
- Excellent troubleshooting, communication skills, resourcefulness and troubleshooting aptitude