Design and develop high performance C++ libraries for data analysis and video processing applications;
Build and optimize communication systems with storage devices (SATA, USB, PCIe);
Integrate and deploy AI/Computer Vision algorithms into software systems;
Participate in optimizing I/O performance and multi-threaded data processing;
Develop tools to support data integrity checking and specialized file format processing;
Support the development of software modules for forensic applications and data analysis;
Conduct research, develop algorithms and test AI models;
Coordinate with teams to integrate AI models into application systems (web/app, mini device);
Optimize the performance of systems;
Other tasks as required by the Department Head
Candidate requirements
Have 3-5 years or more experience working with projects using C++ language;
Proficient in C++ programming (C++11 or higher) and in-depth understanding of data structures and algorithms;
Experience working with C++ frameworks like Boost, Qt, or similar;
Knowledge of multithreading, asynchronous I/O and memory management;
Familiarity with build systems like CMake, Makefile or Visual Studio;
Experience working on Linux or Windows operating systems;
Good analytical and problem solving skills, with an emphasis on performance and optimization.
Prioritize:
Experience working with device communication protocols (SATA, USB, PCIe) or optimizing I/O systems;
Understanding of image/video processing libraries such as OpenCV or FFmpeg. Experience integrating or deploying AI/Deep Learning models (TensorFlow, PyTorch);
Knowledge of forensic file formats or data protection techniques;
Experience working on projects related to Computer Vision or signal processing