Job Summary
We are looking for a Computer Software Engineer to join our Database & Storage Infrastructure team in Singapore, supporting our distributed database and storage platforms.
Responsibilities
- Research, design, and develop computer and network software, and specialized utility programs, to manage large-scale database and storage systems.
- Analyze user and system requirements, and develop software solutions by applying principles and techniques of computer science, engineering, and mathematical analysis.
- Update software, enhance existing software capabilities, and develop and direct software testing and validation procedures for database and storage services.
- Work with computer hardware engineers to integrate hardware and software systems, and contribute to performance specifications.
- Build tooling and automation for monitoring, capacity planning, backup, and incident response.
- Participate in on-call rotations and production incident remediation.
Requirements
- Bachelor's degree or higher in Computer Science, Information Technology, Programming & Systems Analysis, Science (Computer Studies), or Software Engineering.
- Familiar with TCP/IP, Data Structures, Algorithms and other protocols, and have good knowledge of operation system, network, database, computer architecture.
- Basic understanding of database concepts (indexing, transactions, ACID, MVCC, Raft, sharding, CAP, high availability).
- Proficient in one or more programming languages such as Golang/Java/Python/Rust.
- Ability to communicate in Mandarin and English, in order to support coordination and collaboration with Mandarin-speaking stakeholders, teams, and business partners across regional markets.
- Familiar with Unix/Linux operating systems and networking is preferred.
- Experience in MySQL, Redis, MongoDB, HDFS, HBase is preferred.