STEM Software Developer Intern (Robotics, Artificial Intelligence & Machine Learning)

Posted 8 months ago

Company Presentation

STEMWORLD Educational Services is a non-profit organization dedicated to expanding access to STEM (science, technology, engineering, and mathematics) in schools, and providing access into these fields for disadvantaged and marginalized groups. Our stance is that every student has the right to accessible, practical, and hands-on experience with STEM in preparation for their prosperous careers; be it artificial intelligence, machine learning, robotics, or otherwise – all as a part of their core, K-12 education.

Across our various STEM platforms, we look to hire students studying Software and Computer Engineering for the design and implementation of STEM Educationally- Serious-Games (grades K-12). These students will support ongoing activities while experienced engineers will provide mentoring to support their peers’ career skills’ development.

Job Description

We are creating a whole new line of products and services centered around Robotics, Artificial Intelligence, Simulations and Autonomous Vehicles. We are contributing to the advancement of artificial intelligence and machine learning in Canada. This is a great opportunity to become one of the key members who will define a new standard for how AI systems are trained, tested, and validated. STEM World Educational Services is looking for team members who are adaptable and who enjoy challenging themselves by contributing and designing solutions for the future.

At STEMWorld Educational Services we facilitate the process to enable a simple experience for designing and setting up robotics simulation workflows using Unity 3D Platform. This is a key element to empower roboticists and researchers who have limited to no experience with the Unity Environment.

Your Role at STEMWorld

Your role at STEM World Educational Services is focusing on building out end-to-end robotics simulations that will be released to the community as open-source samples. Depending on your interests and skill level, the role may also involve Unity-based development of synthetic environments and scenarios for testing and training the developed robotics systems.

You will be doing the following:

  • Be part of STEMWorld SCRUM Meetings.
  • Provide contributions to the development of applications for robotics simulations.
  • Contribute to the development of virtual environments for robot training and testing.
  • Provide close assistance to the user: insist on the highest quality and create functional and engaging features and APIs that empower customers to create withease the greatest experience in simulations.
  • Write high-quality, clean unity code that is production-grade


  • Studying Computer Science, Computer Programming, Engineering, or any technology related field at either a Canadian High School, College or University.
  • Wanting to gain experience in developing robotics systems and using (or developing) simulators, skills in Python and C/C++, including foundation in data structures, algorithms, and software design.
  • Willing to understand classical mechanics/physics and how it is simulated for robotics
  • Willing to gain experience with Machine Learning algorithms and frameworksincluding working with Unity Engines, 3D simulators, and game development

Expected Outcomes:

  • Task requests are met and delivered on time.
  • Low number of issues related to non-compliance with internal operations procedures.
  • Develop a deep understanding of Robotics, Simulations, Artificial Intelligence, MachineLearning, and Coding.

Additional Notes:

Candidates are expected to be self-motivated and to have a sufficient home office set-up including an internet connection, computer, as well as a quiet and professional workspace.

Technical Skills:

  • Interest and self-starter in STEM Game Development
  • Be able to use/learn Unity 3D Gaming Platform Environment
  • Be able to use Agile Scrum Framework/User Centered Design
  • Be able to use the Agile Framework into the following: requirements analysis, design,development, implementation, and evaluation of educational games.
  • Be able to participate and play a role in the programming team (GameDevelopment) to: Specify pedagogical objectives; specify the pedagogical scenario (learning objectives + game setting); work and produce design documents and proof-of-concepts (Architecture-Model-Prototype).
  • Be able to design, develop, program, and evaluate games.
  • Play an active role in the development team and debug processes.

Soft Skills:

  • Strong listener
  • Inquisitive
  • Verbal and written communication skills
  • Flexible
  • Excellent time management
  • Numeracy

Apply Online