Job Overview
The machine learning engineer work will be an integral part of the machine learning team within Cambium Assessment. This diverse group of professionals that include mathematicians, computer scientists, psychometricians, statisticians, and software engineers, provide custom machine learning solutions for our clients as well as internal support systems.
Our team focuses on natural language applications in educational measurement, with key foci in the automated scoring of student responses for both summative and interim assessments, automated feedback for formative assessments, and automated alerting of disturbing content in student responses. Our team deploys state-of-the-art deep learning tools and models different modalities (e.g., speech, text). We are also responsible for both prototyping and deploying engines and models for use by our clients. This allows us to build research-based products quickly.
The right candidate will have the skills needed to perform full life-cycle software development to take research ideas and initiatives from concept/prototype to production quality software. This includes participation in research discussions, requirements gathering, application and database design, system documentation, writing and unit-testing efficient code, and deployment.
Job Responsibilities
Combine strong software engineering principles with machine learning to build scalable, reproducible, and easy-to-use end-to-end machine learning workflows for advanced deep learning problems
When it comes to model training and deployment, we use a complex model structure which combines both deep neural nets and statistical models. These models are 200-300 MB each in size. We support hundreds of models in our production system. We use a single system for training and inference, dealing with hundreds of large sized models on single system brings many interesting challenges. You will be working along with other engineers and data scientists as you work on these complex systems. Lot of opportunities to learn, experiment and innovate.
We use in-house infrastructure for training and the cloud for inference which involves standardizing code and infrastructure. You will be working on design and implementation of infrastructure to perform scalable training, evaluation, and inference in both systems.
Most of our existing system using GPU for faster inference. You will be working on implementing effective ways of faster inference on CPU.
Develop and deploy synchronous and asynchronous REST API web services using Python frameworks
Develop effective methods of ML model testing during all stages: development, deployment, and recalibration
Code and support our training methods for classical and neural network models, including the use of varying performance metrics, and displays of results with visual and statistical aids.
Utilize and implement best practices for software development of high-performance systems around design, coding, automated unit, and regression testing and deployment
Job Requirements
Bachelor's Degree in Computer Science (or related field) and 3+ years professional experience in field of Machine learning
Experience with the process of prototyping, building, validating, and deploying an ML model to production.
Have expertise in Python, Python-based web frameworks (Flask, Django)
Experience with natural language processing and/or deep learning frameworks such as SpaCy, NLTK, Pytorch, Tensorflow, etc.
Experience building and/or deploying cloud-native services and containerized application on AWS
Experience with SQL and querying databases
Ability to train neural network-based models, analyze performance metrics, and communicate results
Ability to proactively keep up to date with the latest ML research and apply them at work
Ability to work independently, and exceptional verbal/written communication, interpersonal, and teamwork skills are a must
Familiarity with the process of prototyping, building, validating, and deploying an ML model to production
Have expertise in Python and Python-based ML frameworks (e.g., PyTorch or TensorFlow)
Why Work With Us?
When you work with Cambium Assessment, you’ll be helping to design and build inspiring solutions that make a real impact on the online testing industry, as well as the educators and students we support.
Our systems are highly scaled and mission critical serving over a third of all students in grades 3-8 in the United States.
Our web applications are highly interactive and universally accessible.
Our machine scoring methods are driven by artificial intelligence allowing computers to perform such complex operations as grading essays with more accuracy than humans.
Our processes use intensive algorithmic computing allowing a customized experience for each student as the exam adapts real-time based upon answers given.
In the 2021–2022 school year, we delivered more than 100 million online tests, successfully supported peak testing volumes exceeding 1.3 million simultaneous test takers, while ensuring an average response time of less than a tenth of a second. We have the most advanced features of any online testing system, and we continue to push boundaries to improve student performance measurement and enabling educators with actionable insights to drive better overall educational outcomes for our students. To learn more about our organization and the exciting work we do, visit www.cambiumassessment.com
An Equal Opportunity Employer
We are dedicated to fostering a culture that celebrates unique backgrounds, ideas, and experiences. All qualified applicants will receive consideration for employment without discrimination on the basis of race, color, religion, sex, gender, gender identity/expression, sexual orientation, national origin, protected veteran status, or disability.