computer software engineer(A102428)

XIAOMI TECHNOLOGY LLC
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
Chinese, English
Experience level
Senior

Job location

Remote

Tech stack

Testing (Software)
Java
Software Applications
Big Data
C++
Computer Programming
Computer Networks
Databases
Computer Engineering
Data Centers
Distributed Data Store
Distributed Systems
Elasticsearch
Failover
Fault Tolerance
Hadoop
Hadoop Distributed File System
HBase
Network Topologies
Systems Analysis
MySQL
NoSQL
Redis
Software Engineering
Software Systems
Systems Integration
Software Technical Review
Utility Software
System Availability
Computer Equipment
Information Technology
Build Tools
Go

Job description

We are seeking a Senior Computer Software Engineer to lead technical work on the company's database and storage infrastructure platforms in Singapore. You will research, design, and develop large-scale, specialised software systems that power our database and storage services, and partner with hardware and platform engineers to deliver highly available, cost-efficient infrastructure operating at scale across multiple data centres.

Responsibilities

  • Responsible for the design, implementation, monitoring, maintenance, troubleshooting, and optimisation of large-scale database and storage systems, ensuring high availability, scalability, and reliability.

  • Research, design, and develop computer and network software, and specialised utility programs, for distributed database and storage platforms operating at PB-scale and across multiple data centres (including relational and analytics databases, NoSQL systems, and Hadoop-based big-data platforms).

  • Update software, enhance existing software capabilities, and develop and direct software testing and validation procedures, including performance, failover, chaos, and data-integrity testing for database and storage services.

  • Work closely with computer hardware engineers and data-centre operations teams to integrate hardware and software systems, and develop detailed specifications and performance requirements for storage media, server SKUs, and network topology.

  • Build tools, automation, visualizations, and monitors to facilitate the operation and optimization of the global infrastructure.

  • Establish operational standards, runbooks, SLO/SLI frameworks, and on-call practices for the database and storage platform team.

  • Mentor junior engineers, conduct design and code reviews, and lead knowledge transfer and technical training.

Requirements

Bachelor's degree or higher in Computer Science, Information Technology, Programming & Systems Analysis, Science (Computer Studies), or Software Engineering.

  • 3+ years of production experience designing, building, and operating large-scale distributed database and/or storage systems.

  • Deep proficiency in at least one systems language (Java, Go, C++, or Rust) and strong grasp of distributed-systems fundamentals (CAP, consensus, replication, fault tolerance).

  • Experience integrating hardware and software systems and defining hardware performance requirements in partnership with infrastructure or hardware engineering teams.

  • 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.

  • Hands-on production experience operating one or more of: MySQL,Redis, HDFS, Elasticsearch, HBase, or comparable distributed systems is preferred.

Apply for this position