
AND Digital là công ty tư vấn công nghệ giúp các tổ chức củng cố năng lực số và phát triển những sản phẩm số tốt hơn. Công ty cung cấp các dịch vụ tư vấn, kỹ thuật phần mềm, phát triển ứng dụng di động, thiết kế trải nghiệm và giải pháp dữ liệu, hỗ trợ khách hàng tại Vương quốc Anh, châu Âu và Hoa Kỳ. Với phương pháp “Hướng dẫn, Xây dựng, Trang bị”, AND Digital kết hợp triển khai thực tế với phát triển năng lực, hoạt động thông qua các câu lạc bộ gắn kết, nơi mỗi mối quan hệ khách hàng chuyên trách được kết nối với nguồn chuyên môn kỹ thuật rộng hơn.
Lập trình viên C++ hợp đồng - Làm việc kết hợp tại London
Vị trí Lập trình viên C++ hợp đồng tại AND Digital, phát triển phần mềm Linux nhúng đáng tin cậy cho công nghệ y tế an toàn cao. Công việc bao gồm các thành phần ứng dụng C++17, cảnh báo, lưu trữ, giám sát và quản lý lỗi.
Mô tả
- Phát triển các điều kiện cảnh báo kỹ thuật từ dữ liệu đo từ phần cứng và hệ điều hành
- Triển khai cảnh báo cho cảm biến bệnh nhân, chất lượng tín hiệu và hoạt động giám sát bên ngoài
- Tích hợp các giao diện cảnh báo phần cứng, bao gồm điều khiển tắt tiếng, xác thực cấp độ cảnh báo và dữ liệu đo
- Xây dựng cơ chế xử lý và khôi phục lỗi
- Phát triển các bài kiểm tra khi bật nguồn, khả năng tương thích phần cứng, GPU và hệ thống
- Triển khai trạng thái an toàn khi lỗi, quản lý lỗi, watchdog và giám sát hệ thống
- Hỗ trợ phát hiện và khôi phục phiên làm việc bị gián đoạn
- Phát triển ghi nhật ký ứng dụng, ghi nhật ký kiểm toán và xoay vòng nhật ký
- Xây dựng các giao diện lưu trữ với thao tác ghi nguyên tử và có kiểm tra tổng
- Quản lý việc đọc, xóa và liệt kê phiên trên các phân vùng lưu trữ cố định
- Phát triển việc đóng gói, xếp hàng, ghi dữ liệu, lưu giữ và truy xuất dữ liệu bệnh nhân
- Hỗ trợ bổ sung dữ liệu còn thiếu và trình bày dữ liệu lịch sử
- Tạo các giao diện có phiên bản giữa dữ liệu backend và GUI
- Quản lý vòng đời cảm biến bệnh nhân và phiên làm việc
- Hỗ trợ siêu dữ liệu phiên, khôi phục và tắt máy an toàn
- Phát triển xử lý nút nguồn và quy trình tắt nguồn có kiểm soát
- Hỗ trợ xuất dữ liệu qua USB, công cụ dịch vụ và trình xử lý dịch vụ thiết bị
- Hỗ trợ cập nhật phần mềm, xác nhận và quy trình khôi phục phiên bản
- Triển khai trích xuất nhật ký và ghi nhật ký kiểm toán
- Phụ trách một khu vực ứng dụng độc lập từ thiết kế đến mã nguồn được hợp nhất, kiểm thử và lập tài liệu
- Phối hợp với Kiến trúc sư Phần mềm và các kỹ sư làm việc trên những thành phần liên quan
- Đóng góp cho sản phẩm công nghệ y tế an toàn cao, chịu sự quản lý nghiêm ngặt
Yêu cầu
- Có kinh nghiệm vững về phát triển ứng dụng C++17 hiện đại trên Linux nhúng
- Am hiểu sâu về RAII, kiểu có độ rộng cố định, std::atomic, đa luồng và hàng đợi không khóa hoặc có giới hạn
- Có kinh nghiệm xây dựng phần mềm trong đó hành vi xác định và độ tin cậy là yếu tố then chốt
- Có kinh nghiệm với môi trường chạy không cấp phát hoặc cấp phát ít, bao gồm bộ nhớ cấp phát trước và container có dung lượng cố định
- Có kinh nghiệm với kiến trúc ports-and-adapters hoặc hexagonal, interface và dependency injection
- Có kinh nghiệm vững về tích hợp hệ thống Linux, bao gồm dịch vụ, watchdog và quản lý lỗi cấp hệ thống
- Có kinh nghiệm với công nghệ IPC và tuần tự hóa như FlatBuffers, Unix-domain socket hoặc named pipe
- Có kinh nghiệm với CMake, kiểm thử tự động và quy trình CI/CD
- Có kinh nghiệm biên dịch chéo, ưu tiên nền tảng aarch64
- Có nền tảng vững về kiểm thử đơn vị, độ bao phủ mã nguồn và các cổng chất lượng
- Thoải mái làm việc trong các quy trình kỹ thuật chính thức, bao gồm đánh giá đồng cấp, thay đổi có thể truy vết và quyết định thiết kế được lập tài liệu
- Có kinh nghiệm phát triển phần mềm an toàn cao, quan trọng đối với nhiệm vụ hoặc chịu sự quản lý nghiêm ngặt
- Có kinh nghiệm phát triển thiết bị y tế hoặc các hệ thống an toàn cao khác (mong muốn)
- Có kinh nghiệm làm việc trong môi trường được quản lý hoặc lĩnh vực khoa học sự sống (mong muốn)
- Thành thạo AI (mong muốn)
- Có kiến thức về IEC 62304, ISO 13485 hoặc các tiêu chuẩn phát triển phần mềm được quản lý tương đương (mong muốn)
- Có kinh nghiệm với hệ thống cảnh báo y tế hoặc các hệ thống cảnh báo và quản lý lỗi khác (mong muốn)
- Hiểu IEC 60601-1-8 hoặc tiêu chuẩn an toàn tương đương (mong muốn)
- Có kinh nghiệm với supervisor và hệ thống quản lý lỗi dựa trên máy trạng thái (mong muốn)
- Có kinh nghiệm với NVIDIA Jetson, CUDA hoặc xử lý tăng tốc GPU (mong muốn)
- Có kinh nghiệm với Yocto và các gói hỗ trợ bo mạch Linux nhúng (mong muốn)
- Có kinh nghiệm với systemd, sd_notify, D-Bus và journald (mong muốn)
- Có kinh nghiệm với OpenSSL, TensorRT hoặc các công nghệ bên ngoài tương tự (mong muốn)
- Có kinh nghiệm sử dụng Docker cho môi trường phát triển (mong muốn)
- Có kinh nghiệm với GoogleTest, kiểm thử hướng hành vi hoặc Gherkin (mong muốn)
- Có kinh nghiệm Python cho công cụ và tập lệnh triển khai (mong muốn)
- Có kinh nghiệm đóng góp cho hoạt động FMEA phần mềm và triển khai các biện pháp kiểm soát rủi ro (mong muốn)
Phúc lợi
- Nhà tuyển dụng thực hiện chính sách cơ hội bình đẳng và cam kết xây dựng môi trường làm việc hòa nhập
- Có thể cung cấp điều chỉnh hợp lý trong suốt quy trình tuyển dụng khi cần