ROS Resources: Documentation | Support | Discussion Forum | Service Status | Q&A

Robotic Software Engineering Adjunct Faculty - Brandeis University, Graduate Professional Studies

Brandeis University’s Graduate Professional Studies (GPS) is looking for an industry leader to develop and teach in our new Robotic Software Engineering Master’s Program. Brandeis University is consistently ranked among the nation’s top universities, and our online courses are developed using best practices in online learning. Information about Brandeis University and Graduate Professional Studies can be found online at

Job Title: Graduate Professional Studies, Adjunct Faculty
Course: Design and Architectural Patterns for Robotics
Division: Rabb School, Graduate Professional Studies (GPS)
Location: Online

About the position:
We are currently looking to hire an adjunct instructor for RBOT 220: Design and Architectural Patterns for Robotics. This core course will teach students how to resolve a complex software implementation problem by recognizing common design/architectural patterns and develop distributed applications while cognizant of common pitfalls.

This role is ideal for a robotics industry professional looking to shape the future of their field and mentor the next generation of colleagues in the rapidly growing AI/Robotics fields.

About the course:
RBOT 220 - Design and Architectural Patterns for Robotics is a core course in the Robotic Software Engineering Master’s Program. This course will discuss the numerous software frameworks that drive robots – focusing on the underlying design and architectural patterns and anti-patterns and how to build complex software systems in a distributed environment.

After course completion, students should be able to:

  • Resolve a complex software implementation problem by recognizing common design/architectural patterns.
  • Develop distributed applications while cognizant of common pitfalls.
  • Design and implement a robotic application using ROS.
    General topics to be covered include:
  • Architectures: Centralized, Decentralized and hybrid architectures, distributed system, abstractions, Architectural patterns, Cloud systems
  • Communication: Remote procedure calls, REST, Service Oriented architectures,
  • Concurrency: Thread, Synchronization, communication
  • Memory models for distributed programming
  • Tour of selected distributed systems

Qualified candidates will have Subject Matter Qualifications in the following areas:

  • Current active employment in the Robotics Software Engineering field, or related industry
  • 5-10 years of hands-on experience with C++ software development, software engineering and life cycle.
  • Experience with robotic system architecture development.
  • Experience developing robotic applications using open source frameworks.
  • Strong understanding of architectural and design patterns, C++ templates and meta programming techniques.
  • Minimum of a master’s degree.


  • Experience developing robotic applications using ROS and other open source frameworks.
  • Strong understanding of ROS architecture and its components (and tools such as rviz, gazebo, etc.).
  • Teaching experience preferred; online teaching or learning experience preferred.

General responsibilities include:

  • For new courses requiring development:
    • Design a syllabus following program chair guidance and the syllabus template.
    • Create content that aligns with course outcomes and offers the author’s experiences and perspectives on key points
  • For all courses - develop and deliver the course according to our teaching standards, which include actively facilitating online discussions, providing relevant and timely feedback on student work, reporting grades, and discussing student issues with staff.
  • Create or refine and facilitate the course site in the Moodle learning management system.

General skill requirements include:

  • Strong interpersonal skills when relating to students.
  • The ability to communicate effectively in writing, including conveying complex information and promoting in-depth engagement on course topics.
  • The ability to devote adequate time to courses, including responding to students and providing meaningful feedback in a timely manner.

About the Masters in Robotic Software Engineering Program:
From self-driving cars to farming to advances in healthcare and caretaking, nearly every global industry will be impacted by autonomous robots and the software that drives them. The Masters in Robotic Software Engineering will allow students to develop an advanced understanding of robotic engineering concepts and learn from leading software engineers and roboticists.

All GPS Masters courses are 10-weeks long and taught asynchronously in the online learning environment with no set days or times for interaction.

About GPS Faculty:
GPS Faculty instructors are active practitioners in the industries that align with our programs with the professional expertise to bring to course discussions and threads. Instructors are part time and work fully online, with no requirement to appear on campus. Our faculty have earned at least a master’s degree with many holding terminal academic degrees and industry-specific credentials. Previous experience teaching online is not required; GPS offers a comprehensive training program for qualified applicants.

How to apply:
GPS welcomes applications for its adjunct faculty pool on an ongoing basis. The application process consists of the online application and, if subject matter qualifications are met, a series of interviews at the discretion of the Program Chair and Director of Program Development. Complete your application online at