Our team has an immediate Co-op opening for a Software Engineer.
- Design, develop, and test software in a wide range of products, including; Concurrent systems (parallel systems and distributed systems) and distributed storage/data systems.
- Analyze and optimize software system performance.
- Participate in scrums and sprint planning.
- Learn and adopt new technologies; research, survey and present industry trends to the team.
- Generate innovative ideas and new patent applications.
What you’ll bring to the team:
- Proficient in C and C++ programming.
- Solid grasp of fundamental concepts related to system design, such as data structures, algorithms, and operating systems.
- Experience in Linux development environment.
- Experience with software development tools (IDE, git) and software development life cycle.
- Knowledge of memory manipulation, data structures and concurrency algorithms is an asset.
- Experience in distributed systems is an asset.
- Experience contributing to open source distributed system projects is an asset.
- In pursuit of a BS, MS, or PhD degree in Computer Science, Electrical Engineering or Telecommunications.