主要負責設計并實現(xiàn)機器人上位機與瀏覽器、下位機、管理后臺及云端服務之間的所有網絡通信鏈路,確保其高可用、低延遲。
1、負責AI產品Ubuntu桌面端應用程序的全流程開發(fā),包括需求分析、架構設計、編碼、測試、部署和維護。
2、熟悉C++ 下的 TCP/UDP Socket 編程及 WebSocket 協(xié)議,能夠解決多路連接下的數(shù)據包排序、丟包重傳、流量控制等網絡疑難問題。要求熟練使用 gRPC 或 RESTful API 框架(如使用libcurl)與云端后臺進行高效、安全的數(shù)據交互。配合web前端實現(xiàn)核心用戶交互界面,包括但不限于:主交互窗口、聊天對話界面、設置面板、語音/視覺交互反饋UI等。
3、熟悉ROS 2 框架,通過Topic與下位機實現(xiàn)指令交互。
4、熟練使用SQLite 數(shù)據庫在C++項目中的集成與開發(fā),具備豐富的數(shù)據庫設計、SQL語句編寫及深度性能優(yōu)化經驗。深刻理解數(shù)據庫事務、索引優(yōu)化等概念,能保證數(shù)據操作的原子性和一致性。
5、熟練使用WebRTC 或基于 WebSocket 的自定義協(xié)議,實現(xiàn)實時視頻流渲染。熟悉主流視頻采集框架,能夠進行攝像頭驅動參數(shù)調優(yōu)。
6、熟練使用 GStreamer 或 ALSA/PulseAudio 等庫進行麥克風音頻采集,處理麥克風錄音、揚聲器播放等功能。
7、熟練掌握多線程編程和進程間通信技術。
8、深度集成Ubuntu桌面環(huán)境,實現(xiàn)應用自啟動、后臺服務管理等。
9、進行客戶端性能優(yōu)化,降低內存和CPU占用,保證應用長時間運行的穩(wěn)定性和流暢性。
崗位要求:
1、碩士以上學歷,計算機相關專業(yè)。3年以上 Linux平臺桌面應用程序開發(fā)經驗,需精通Ubuntu系統(tǒng)及其桌面環(huán)境(GNOME/KDE),熟練掌握C/C++、Makefile、Shell,有良好的編碼規(guī)范;
2、熟悉軟件工程/項目開發(fā)流程基本的理念和要求,有良好的文檔設計規(guī)范;
3、熟悉常用的數(shù)據結構與算法分析;
4、熟悉Linux應用編程,多線程編程,網絡編程;
5、熟悉Linux內核驅動編程;
6、熟悉常用的網絡通信協(xié)議;
7、Linux內核理解較深,對應用進程/內核的掛死、內存泄露、死鎖等問題有較豐富的方法和經驗者優(yōu)先。
8、多媒體處理經驗: 有音頻處理、視頻播放、動畫實現(xiàn)經驗者優(yōu)先。