Kỹ sư phần mềm C và Go phát triển dqlite tại Canonical
Đã xác nhận còn mở
Phát triển dqlite, hệ thống SQLite phân tán của Canonical, cùng các thành phần đồng thuận Raft trong vai trò từ xa giới hạn ở khu vực EMEA.
Tìm việc theo công ty: Canonical
Lưu việc làm — tài khoản miễn phí Việc làm đã lưu
Tạo hồ sơ ứng tuyển miễn phí — Lưu kỹ năng và dự án trong một hồ sơ có thể dùng lại. Hồ sơ mặc định riêng tư; bạn quyết định khi nào chia sẻ. Ứng tuyển tin này trực tiếp với nhà tuyển dụng.
Bằng cách tiếp tục, bạn đồng ý với cách xử lý dữ liệu để quản lý tài khoản và hồ sơ của mình. Quyền riêng tư
Tổng quan vị trí
Nhóm dqlite xây dựng cơ sở dữ liệu SQLite phân tán dùng thư viện Raft của Canonical để đạt đồng thuận và sao chép dữ liệu. Thư viện C và gói Go của hệ thống được sử dụng trong các dự án như MicroK8s và LXD. Tin gốc giới hạn vị trí từ xa này trong khu vực EMEA.
Trách nhiệm
- Thiết kế và triển khai thay đổi trong libraft, dqlite và go-dqlite.
- Điều tra vấn đề người dùng gặp phải và sửa lỗi ở cơ sở dữ liệu cùng các thành phần sao chép.
- Cải thiện kịch bản Jepsen, kiểm thử cơ sở dữ liệu tính sẵn sàng cao và kiểm thử tải.
- Tham gia rà soát kiến trúc, mã nguồn và trao đổi với người dùng mã nguồn mở cũng như đối tác thương mại.
Yêu cầu
- Có kinh nghiệm hệ thống phân tán, lý tưởng là đồng thuận Raft, và lập trình C vững.
- Có thể nhanh chóng tìm hiểu hệ thống mới, giao tiếp rõ ràng bằng văn bản và lời nói.
- Có bằng cử nhân hoặc tương đương về khoa học máy tính, ngành STEM khác hoặc chuyên ngành liên quan.
- Hiểu lập trình bất đồng bộ và các mẫu xử lý đồng thời là lợi thế.
Công nghệ trong công việc
- Python: Dqlite is available as a pure C library or through a Go package that we also maintain, and we intend to provide bindings for Python and other .
- Go: Its C library and Go package are used by projects such as MicroK8s and .
- C: Its C library and Go package are used by projects such as MicroK8s and .
Hướng dẫn đánh giá mức độ phù hợp (tiếng Anh)
Phân tích dựa trên yêu cầu và trách nhiệm trong tin tuyển dụng của nhà tuyển dụng.
Understanding the scope. This C, Golang Software Engineer working on dqlite, a Raft extension for SQLite position at Canonical is best assessed through the work described in the employer’s posting, rather than the title alone. The available role overview says: “The dqlite team builds a distributed SQLite database that uses Canonical’s Raft library for consensus and replication. Its C library and Go package are used by projects such as MicroK8s and LXD. The source limits this…” Read that statement together with the responsibilities below to understand the likely balance between delivery, coordination and technical decision-making. The role belongs to the software engineering area, but that label is only a guide to the work; the employer’s own requirements remain decisive. Before applying, check the original listing for reporting lines, product or team assignment, employment terms and any details that may have changed since this copy was checked. Where this page says a fact is not specified, treat it as an open question rather than an implied promise.
What the responsibilities signal. The posting specifically names “Design and implement changes in libraft, dqlite and go-dqlite.”; “Investigate user issues and fix defects in the database and replication components.”; “Improve Jepsen scenarios, high-availability database tests and stress testing.”. For each duty, identify a project where you performed comparable work and be ready to describe the context, your own contribution, constraints, decisions, and measurable result. Explain how you moved from the initial need to implementation, review, release or operational follow-through, where those stages apply. If the work involved other teams or users, distinguish your decisions from the group’s contribution. Avoid presenting a technology keyword as proof by itself: connect it to the problem you solved, the scale or complexity involved, and what changed after your work. The source may contain additional duties; review it directly before preparing your application.
How to read the requirements. The listed qualifications include “Experience with distributed systems, ideally including Raft consensus, and solid programming in C.”; “Ability to learn unfamiliar systems quickly and communicate clearly in writing and conversation.”; “A bachelor’s degree or equivalent in computer science, another STEM field or a related discipline.”. Mark each requirement as demonstrated, adjacent experience or a genuine gap, then use a concise example for the first two categories. A strong example explains what you personally owned, how you made trade-offs, how you validated the result and what you learned. If the posting specifies years of experience, language ability, certifications, location or eligibility, address those facts plainly in your CV or application rather than relying on the employer to infer them. Do not claim a qualification from exposure alone. For a requirement you do not meet, describe relevant transferable experience accurately and ask the recruiter whether it is mandatory.
Technology and working evidence. The technology terms associated with this listing are Python, Go. Treat this as a set of posting-derived signals, not a guarantee that every tool is used daily or that the list is complete. For each term relevant to your experience, prepare one concrete example: the system or workflow, the part you owned, the alternatives considered.
Phúc lợi
- Canonical nêu mô hình làm việc tại nhà theo nhóm phân tán với các buổi gặp mặt trực tiếp, ngân sách học tập cá nhân 2.000 USD mỗi năm, rà soát đãi ngộ hằng năm và phần thưởng ghi nhận.
- Tin tuyển dụng còn nêu nghỉ phép năm, nghỉ khi sinh con, chương trình hỗ trợ nhân viên và hỗ trợ đi lại dự sự kiện công ty. Chế độ cụ thể có thể thay đổi theo địa điểm.
Về Canonical
Canonical phát hành Ubuntu và phát triển phần mềm mã nguồn mở cho đám mây, thiết bị kết nối và hạ tầng doanh nghiệp. Các nhóm của công ty làm việc phân tán trên nhiều quốc gia.
Trang web nhà tuyển dụngCách ứng tuyển
Kiểm tra tin gốc và gửi hồ sơ trực tiếp qua trang tuyển dụng của nhà tuyển dụng.
Xem tin gốc và ứng tuyểnNguồn được kiểm tra: 2026-11-08
Khám phá việc làm theo danh mục
Việc làm liên quan
- Kỹ sư Kubernetes Python và Go cấp cao tại Canonical — Canonical
- Kỹ sư phần mềm Go tại Canonical — Canonical
- Kỹ sư Go về công cụ lập trình và bộ chứa tại Canonical — Canonical
- Vị trí Staff Software Engineer for Identity Management (Go/Golang) tại Canonical — Canonical
- Kỹ sư phần mềm Kubernetes Python và Go tại Canonical — Canonical
- Kỹ sư Golang cấp cao — ANDPAD Vietnam