Design and develop computer vision or natural language processing algorithms for various tasks defined by applications in the education domain, such as object detection & tracking, text classification, text summarization or educational chatbot systems.
Train or fine-tune deep learning models using libraries like TensorFlow or PyTorch.
Integrate and deploy computer vision or LLM solutions on appropriate platforms (cloud, embedded systems).
Collaborate with cross-functional teams (software engineers, data scientists, UX experts) to bring projects to fruition.
Continuously learn and stay up-to-date on the latest advancements in AI research.
Qualifications
5+ years of professional software engineering experience, with proficiency in C++ OR Rust OR C# OR Java, Scala, Kotlin, Clojure, or other high-performance programming languages
Fluency in at least two programming languages, with a strong preference for experience in both C++ and Python
Hands-on experience in computer vision, image processing, natural language processing, embedded software development, mobile app development or compiler technologies
Bachelor's degree or higher in Computer Science, Mathematics, Electrical Engineering, or Physics or a comparable degree
Demonstrated ability to mentor and lead junior engineers
Strong problem-solving skills, attention to detail, and a proven track record of delivering high-quality software
Excellent communication skills and the ability to collaborate effectively with cross-functional teams
English proficiency at least at a conversational level
Preferred:
7+ years of software engineering experience with a focus on C++
Familiarity with functional programming languages (e.g., Lisp, Ocaml, Haskell) OR parallel programming frameworks (e.g., CUDA, OpenCL, OpenMP)
Fluency in both English and Chinese
Experience with modern software engineering practices (e.g., version control, test-driven development, CI/CD)
Familiarity with and interest in the specific domains and problems our team is working on