Description
- Self-managing and contributing to the product development activities including both internal projects and joint development projects;
- Conducting end-to-end analysis that includes data gathering and requirements specification, analysis, and ongoing deliverables;
- Understanding and breaking user stories and acceptance criteria down into technical requirements that you will then use to plan sprints and develop;
- Working with the Product and Data Science team to brainstorm, design the architecture, evaluate technologies, implement POCs, benchmark and productionise the ideas;
- Understanding and implementing analytical dashboards and machine learning model visualisations;
- Working with the Sales and Marketing team to understand the requirements and support our clients.
- Mentoring and providing training to associate/junior software engineers and interns, motivating them to reach the next level;
- Understanding and advocating our long-term vision while working with the management and product teams to define and adapt the same; and
- Contributing to the evangelisation of our product and our culture internally and externally.
Requirements
- Be able to write well-designed, testable, and efficient code, and have extensive experience in writing unit tests and acceptance tests;
- Proven ability to analyze, troubleshoot and accelerate software implementation;
- Have a solid and in-depth understanding of the internal mechanisms of JavaScript/TypeScript, HTML/CSS and modern web browsers;
- Rich experience in Angular framework, single-page application architecture, reactive programming libraries (such as RxJS and Redux-style state management framework);
- Based on standards, guidelines and best practices, have extensive experience in developing HTML pages from graphic design assets (Adobe, Sketch or InvisionApp);
- Experience in using graphics/chart generation libraries (such as D3 or eCharts) in high-performance data presentation interface is preferred;
- A good understanding of performance optimization, algorithms, data structure, computational complexity, data analysis, and dashboard/visualization is highly valued;
- Track record with practical experience in modern software engineering methods.