Job responsibilities
- Executes standard software solutions, design, development, and technical troubleshooting
- Writes secure and high-quality code using the syntax of at least one programming language with limited guidance
- Designs, develops, codes, and troubleshoots with consideration of upstream and downstream systems and technical implications
- Applies knowledge of tools within the Software Development Life Cycle toolchain to improve the value realized by automation
- Applies technical troubleshooting to break down solutions and solve technical problems of basic complexity
- Gathers, analyzes, and draws conclusions from large, diverse data sets to identify problems and contribute to decision-making in service of secure, stable application development
- Learns and applies system processes, methodologies, and skills for the development of secure, stable code and systems
- Adds to team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 2+ years applied experience
- BS, MS or PhD degree in Computer Science, Statistics, Mathematics or Machine learning related field.
- Proficiency in implementing ML models at least one of the following areas: Natural Language Processing, Knowledge Graph, Computer Vision, Speech Recognition, Reinforcement Learning, Ranking and Recommendation, or Time Series Analysis.
- Foundational knowledge in Data structures, Algorithms, Machine Learning, Data Mining, Information Retrieval, Statistics.
- Demonstrated expertise in machine learning frameworks: Tensorflow, Pytorch, pyG, Keras, MXNet, Scikit-Learn.
- Strong programming knowledge of python, spark; Strong coding knowledge on vector operations using numpy, scipy;
- Strong analytical and critical thinking skills for problem solving.
- Excellent written and oral communication along with demonstrated teamwork skills.
- Demonstrated ability to clearly communicate complex technical concepts to both technical and non-technical audiences.
- Experience of collaborating with other researchers, engineers, and stakeholders.
- A strong desire to stay updated with the latest advancements in the field and continuously improve one's skills
Preferred qualifications, capabilities, and skills
- Knowledge of distributed computation using Multithreading, Multi GPUs, Dask, Ray, Polars etc.
- Knowledge of distributed data/feature engineering using popular cloud services like AWS EMR
- Knowledge of large scale training, validation and testing experiments
- Knowledge of cloud Machine Learning services in AWS i.e. Sagemaker
- Knowledge of container technology like Docker, ECS etc.
- Knowledge of Kubernetes based platform for Training or Inferencing