- Design, develop, test, deploy, maintain and improve software.
- Manage individual project priorities, deadlines and deliverables.
- Bachelor's degree in Computer Science, or similar technical field, or equivalent practical experience.
- 1 year of relevant work experience in software development.
- Experience working with two or more from the following: web application development, Unix/Linux environments, mobile application development, distributed and parallel systems, machine learning, information retrieval, natural language processing, networking, developing large software systems, or security software development.
- Master’s degree, Doctorate's degree, or further education in Engineering, Computer Science or other technical related field.
- 4 years of relevant work experience in software development.
- Interest and ability to learn other coding languages as needed.
- Ability to speak and write English fluently and idiomatically.