Job Description:
Design and development of backend services / systems / platforms used by our products and our user
Write high-quality, clean, elegant, and maintainable code
Build common libraries
Analyse requirements, design and develop functionalities based on the product requirements
Understand the product thoroughly, constantly optimise the product, identify and fix problems, improve stability and user experience
Design and implement various supporting tools as needed
Collaborate with other engineers, product managers, user experience designers, and operations engineers to build features and products
Requirements:
Bachelor's or higher degree in Computer Science or related fields
Less than 1 year of working experience and penultimate year students welcomed
Passionate about coding and programming, innovation, and solving challenging problems
In-depth understanding of computer science fundamentals (data structures and algorithms, operating systems, networks, databases, etc)
Strong and hands-on experience with at least one of the programming languages: Go, Python, C++, Java
Hands-on experiences and knowledge on relational databases such as MySQL
Strong logical thinking abilities
Skills below are optional but preferable:
Familiar with Linux development environments and multi-threaded programming
Familiar with common network protocols (TCP, UDP, HTTP) and network programming
Experience in server/ web security
Experience in design and development of large-scale distributed systems
Hands-on experiences in Web Service frameworks and technologies such as Django, Ruby On Rails, or Node.js
Familiar with performance tuning of Web Server, massive concurrency handling, and caching mechanisms