OCLC Canada

You have a life. We like that about you.

At OCLC, we believe you’ll do the best work of your life when you’re living the best life possible.

We work hard to build the technology that connects thousands of today’s libraries. But we also work hard to make a job at OCLC a meaningful part of a balanced life- not a substitute for one.

The Job Details are as follows:

Discover. Innovate. Collaborate. Inform. A few words we use to describe a career at OCLC.

Technology with a Purpose. OCLC supports thousands of libraries in making information more accessible and more useful to people around the world. OCLC provides shared technology services, original research and community programs that help libraries meet the ever-evolving needs of their users, institutions and communities. With office locations around the globe, OCLC employees are dedicated to offering premier services and software to help libraries cut costs while keeping pace with the demands of our information-driven society.

The Associate Software Engineer will perform analysis and design of software programs and systems and create, analyze, design, modify and test programs and systems.


  • Uses industry standard programming techniques to translate requirements and designs into code.
  • Analyze and solve problems in existing systems.
  • Design, code and test multiple modules of a system in a timely manner.
  • Participates in unit, system and acceptance testing by designing tests, building test data, test execution and evaluation, along with recommending/making improvements/fixes to the tested system.
  • Assists in developing and interpreting requirements


  • Bachelor’s degree in a Computer Science and 2-4 years of software development experience
  • Coding skills in Java, JEE, Spring Framework, XML, JSON, Junit / TestNG (preferred) and Maven.
  • Experience with source control system such as Git.
  • Familiarity with issue tracking system such as JIRA is desirable.
  • Experience with Java development IDE such as NetBeans or Eclipse (preferred).
  • Familiarity with continuous integration system such as Bamboo / Jenkins (preferred) is a plus.
  • Scripting experience in Groovy, Ruby, JavaScript (Node.js) is a plus.
  • Working knowledge of Linux/Unix.
  • Experience in Web Services development with Jersey (JAX-RS).
  • Understanding of Database design principles and experience in SQL queries and stored procedures.
  • Experience with MongoDB is a plus.
  • Familiarity with agile software development methodology such as Scrum or Kanban (preferred) is a plus.
  • Strong oral, written and presentation skills.
  • Creative and innovative thinker.
  • Detail oriented.
  • Ability to work and communicate effectively in a team environment.
  • Comfortable taking directions when needed and on occasions be able to work independently.
Job Overview