Software Engineer, Linux Big Data Distribution (Consultant based in Montreal, QC, Canada)

We are looking for a talented Software Engineer to work on all aspects of the big data distribution of the agylstor systems. You will be writing distributed software that can transfer data at 256 GB/s.  This challenging position requires strong knowledge of Linux Operating System, its programming interfaces, network protocols and storage technologies.  You will be working remotely from Montreal as a consultant for six months which could lead to a fulltime position in Montreal with periodic visits to Agylstor HQ in Silicon Valley, California.

Responsibilities:

  • Develop Linux smart clients to transfer data in parallel to Agylstor multiple targets at wire speed (100 Gb/s)
  • Work in collaboration with our solutions architects to develop the best possible solutions for our customers to transfer their big data efficiently
  • Work collaboratively with the software and hardware engineers to troubleshoot complex problems

Job Requirements:

  • BS in Computer Science/Engineering or equivalent
  • Five years in a similar position
  • Prior experience optimizing parallel data transfer across network to storage media (NAND flash)
  • Excellent knowledge of C++
  • Good knowledge of boost and STL libraries
  • Expert in multi-threading
  • Solid experience in Linux system programming
  • Network (socket) programming knowledge: TCP/IP
  • Willingness to learn new technologies and be passionate about it
  • Excellent knowledge of software engineering best practices: Agile software development, design patterns, test-driven development, unit testing, code reviews, design documentation etc.
  • Well-organized, self-starter with a great team spirit
  • Ability to think analytically and to overview complex systems
  • Great sense of responsibility
  • Good interpersonal and communication skills

Nice to have:

  • Python
  • bash
  • Knowledge of NFS 3, 4.1 and 4.2
  • Knowledge of xfs
  • Knowledge of RDMA, NVMe, NVMeOF, RoCE
  • Kernel internals, specifically the IO stack
Close Menu