AiChat is looking for full-stack developers/backend developers with web and 3D environment to build our SaaS omni-channel CX conversational platform. You will be primarily focusing on developing and integrating 3D models or avatars into our web-based SaaS omnichannel platform. You should also be someone who loves solving problems, build scalable and reliable platforms. Collaborating with others, knowledge sharing, supporting and helping team for growth and learning to foster the right engineering culture.
Responsibilities
Technical Architecture
- Work with product managers in understanding product specifications and how it impacts technical design
- Design technical architecture and flows that describe how components will be put together
- Recommend and implement application monitoring, system improvements and optimisations with Engineering Manager to ensure system availability and scalability
- Document technical debts and prioritize them in backlog with Engineering Manager
- Design and scalable pipeline for rendering or delivering animated avatars syncing with voice audio using lip-animation technology like Nvidia Audio2face or Azure AI and rendering engines like WebGL or Unreal Engine, server or client side
Delivery
- Implement microservices that streams animation and sync with voice into 3D engine for Web or stream with server-side rendering
- Implement audio conversions suitable for input to 3D engines and WebGL
- Put together 3D models in a scene compatible with the environment.
- Perform blendshapes mapping between 3D models where required
- Perform testing and optimize for latency and synchronization
- Write quality and easily readable code and implement functional tests
- Oversee junior developers in developing same quality code expected of company quality
- Collaborate closely with Front-end developers to develop integrated microservices applications.
- Document technical specifications for future reference and maintenance
- Take lead on projects, as needed
Team and Culture
- Participate in continuous improvement, knowledge sharing and training to remain current on best practices, programming methodologies assisting peers.
Requirements
- At least 5 - 7 years experience with NodeJs, or equivalent
- Worked with 3D engines like Unity/Three.js/WebGL for 3D rendering and animation
- Experience with real-time audio and video streaming and buffering and applications of different audio formats optimised for web playback
- Experience with Web RTC, Web Audio, Web Sockets
- Plus if you have experience with Nvidia Audio2Face or Azure AI technology
- Knowledge of modern development principles and best practices (Object Oriented Programming, Design Patterns, SOLID Principles, unit testing, continuous integration and deployment)
- Proficient understanding in HTML/HTML5, CSS/CSS3, Javascript, ReactJS.
- Experienced in designing database schemas, and working with Redis/Cassandra
- Experienced managing and implementing microservices architecture
- Bonus experience developing SaaS platforms.