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