Main Tasks
- Build and maintain scalable, high-performance solutions
- Develop rich front-end interfaces with Angular and its ecosystem
- Create back-end solutions with C++ and C#, integrating effectively with databases and middleware
- Write clean, modular, and testable code, implementing best practices in UI and architecture, including patterns like MVC, MVVM, and Flux
- Leverage REST, Microservices, and containerization tools (Docker, Kubernetes) to design flexible, robust applications
- Prioritize performance, security, and scalability, ensuring high standards throughout the design, development, and testing process
- Design and develop controls and software for new products features by collaborating with cross functional teams across different geographic regions
- Ownership of technical specifications for new developments, by liaising with stakeholders on product requirements
- Evaluate technical specifications of third-party components used for own developments including testing, if any
- Conduct development reviews and validations
Education
- Bachelors or master’s degree in computer science, Computer Engineering or related field.
Experience, Expertise and Methodology
- ≥ 5 years of experience in full-stack software development
- Able to develop concepts and architectures
Front-end Development (Angular Primary Focus)
- Design, develop, and maintain responsive, user-friendly, and visually appealing web interfaces primarily using Angular and its ecosystem (e.g., RxJS, NgRx for state management)
- Translate UI/UX designs and wireframes into high-quality, reusable Angular components and modules
- Ensure cross-browser compatibility, accessibility, and optimal performance of front-end applications
- Implement interactive features and ensure a smooth, engaging user experience across various devices
- Stay up to date with the latest Angular versions and best practices
- Vue or React background also acceptable, but must demonstrate quick learning ability and willingness to transition to Angular
Back-end Development (C++Focused)
- Design, develop, and maintain high-performance, scalable, and robust server-side applications and APIs using modern C++/C#
- Implement complex business logic, handle intensive data processing, and optimize for low latency and high throughput
- Develop and integrate efficient APIs for communication with the Angular frontend
- Focus on memory management, multithreading, and concurrency for performance and stability
- Conduct profiling and optimization to ensure peak performance of backend services
- Implement strong security measures within the C++/C# backend
API Design & Integration
- Design and develop efficient communication protocols and APIs (e.g., RESTful, gRPC, WebSockets) that facilitate seamless and performant interaction between the Angular frontend and the C++ backend
- Integrate with third-party APIs and external systems as needed
Database Management
- Design, implement, and manage database schemas (SQL like PostgreSQL, MySQL, or NoSQL solutions that C++/C# can efficiently interact with) to ensure efficient data storage, retrieval, and integrity
- Write optimized database queries and manage database migrations, often with an emphasis on performance for C++/C# applications
- Linux familarity is a plus
Testing & Quality Assurance
- Write and execute comprehensive unit, integration, and end-to-end tests (e.g., using Jasmine, Karma, Cypress for Angular; Google Test/Catch2 for C++/C# backend) to ensure code quality and application functionality
- Actively participate in rigorous code reviews, emphasizing performance, memory safety, and C++/C# best practices
- Identify, troubleshoot, and debug complex issues across the full stack, including challenging C++/C# memory or concurrency bugs
Collaboration & Communication
- Work closely with product managers, UI/UX designers, other engineers, and stakeholders throughout the software development lifecycle, proactively suggest potential improvements and close logic gaps
- Actively participates in Agile ceremonies
- Clearly articulate complex technical concepts and decisions to both technical and non-technical team members
Other requirement criteria
(Personal related competence as social competence, management competence, strategic competence, willingness to travel, etc.)
- Strong communication skills (verbal and written) for collaborating across different stakeholders, cross cultural and international environment.
- Fluent in English and/or Mandarin, other languages are an advantage