Home / Careers

Bioinformatics Solutions Inc. (BSI) founded in 2000 in Waterloo, Canada, develops and continually innovates the proteomics software platform PEAKS to identify and quantify proteins in very complex biological samples with LC-MS. Also provided is antibody characterization software and service, allowing customers to quickly and cost effectively characterize antibodies.

We offer great career opportunities in a new dynamic setting. Our employees are eligible for attractive benefits and options. Our office is located in the city of Waterloo, Ontario, Canada (approximately one hour driving distance from Toronto).

Available Positions

With the exciting expansion of Bioinformatics Solutions Inc., we are currently looking for a hard-working Java Developer who likes to take on challenging tasks and strives to achieve new goals. The successful candidate will join our talented group of software developers who aim to make a positive difference in proteomic research.


  1. Port bioinformatics algorithms from desktop platform to cloud-based platform
  2. Design server end software for large-scale: highly available distributed cloud system in high-quality, high-performance Java, and create robust high-volume cloud computing applications
  3. Collaborate with other developers to design, document and implement the interfaces between modules
  4. Debug and troubleshoot problems in test and production environments
  5. Create and execute the unit test plan and feature test plan
  6. Interact with our project teams supporting customers all over the world


  1. Bachelor degree in computer science, software engineering or related fields
  2. 3+ years experience working with Java as a software developer
  3. Strong understanding of algorithms and how to apply them in real world applications
  4. Strong understanding of object-oriented programming and design patterns
  5. Strong understanding of asynchronous programming and multi-threaded programming
  6. Familiar with latest Java 8 features, such as stream API, lambda, ect.
  7. Familiar with Java Swing and Java FX
  8. Work experience with SQL and NoSQL databases

Bonus Skills (be sure to mention):

  1. Strong understanding of programming in distributed system
  2. Experience with web technologies on JVM is a bonus
  3. Experience with Akka, Hadoop and Spark is a big bonus
  4. Experience with Play and VertX is a big bonus
  5. Experience with HDFS, MongoDB and Cassandra is a big bonus

We are currently looking for a Machine Learning Scientist.


  1. Research and development on feasible algorithms to solve bioinformatics problems
  2. Applying deep learning algorithms to improve current solutions to proteomics (LC-MS/MS data analysis)



  1. 3+ years of programming experience in Java, C/C++, Python or other languages
  2. 2+ years of NLP / ML research or equivalent development experience
  3. Degree in computer science or related fields
  4. Knowledge of deep neural networks, reinforcement learning and related algorithms
  5. Experiences on deep learning frameworks such as, TensorFlow or Theano
  6. Excellent communication and team-working skills

We are always looking to expand our sales and development team, also on the lookout for talented people with other areas of expertise. If you are interested in joining our team, please send your resume here. We will contact you if we wish to arrange an interview.