Career Opportunities at Klocwork

Klocwork helps developers create more secure and reliable software. Our tools analyze source code on-the-fly, simplify peer code reviews, and extend the life of complex software. Our customers are some of the biggest brand names in the world, building medical devices like robotic arms, the most advanced aerospace technology imaginable, automotive wizardry, and mobile telecom wonders for today's needs and tomorrow's dreams. These companies rely on Klocwork's patented technology to analyze and strengthen their "can't fail" software. To do this, we need exceptional people on our team. People that want to be at the cutting edge of software development - software that is literally shaping the way society lives.

Klocwork is owned by Rogue Wave Software. Rogue Wave provides software development tools for mission-critical applications. Our trusted solutions address the growing complexity of building great software and accelerates the value gained from code across the enterprise. Rogue Wave's portfolio of complementary, cross-platform tools helps developers quickly build applications for strategic software initiatives. With Rogue Wave, customers improve software quality and ensure code integrity, while shortening development cycle times.

You'll be part of a highly skilled, fast-paced team where we face new challenges and celebrate success together. We are a team of bright minds and motivated individuals who openly share ideas to shape the future of software development while ensuring success for our customers.

How to Apply:

If you are up for a challenging and rewarding opportunity with a company that cares about our customers' code as well as your professional development, we'd love to hear from you.

We would like to thank all applicants for their interest, however, only those who are considered for an interview will be contacted.

It is the policy of Klocwork not to discriminate against any applicant for employment, or any employee because of age, colour, sex, disability, national origin, race, religion, or veteran status.

Send your resume in confidence to, attention; Human Resources or by mail to:

30 Edgewater Street, Suite #114
Kanata, Ontario K2L 1V8
Attention: Human Resources

Current Openings

# Position Department Location Posted
1 Software Developer (Java) Ottawa, ON 8 OCT 2 4
2 Test and Verification Engineer Ottawa, ON 7 OCT 2 4
3 Lead Generation Representative Ottawa, ON 22 SEP  14
4 Software Developer (C++) Ottawa, ON 2 SEP 2 4
5 QA Manager Ottawa, ON 16 OCT  14
6 Installation Technology Developer Ottawa, ON 16 OCT  14

Detailed Career Postings

Software Developer (Java)

Role Overview

  • Devise and carry out development tests on software changes and new features;
  • Peer review the work of other software designers;
  • Follow our software development process and make suggestions as to how this process might be improved;
  • Assist Customer Service and Test in tracking down problems with our products;
  • Supervise and mentor more junior software designers;
  • Participate in high level/system design of significant new features/projects;
  • Write software and protocol specifications;
  • Maintain existing software (bug fixes, enhancements);
  • Responsible for ensuring high quality output for all projects worked on;
  • Participate in detailed design/implementation of new features.

Required Skills and Expertise:

  • Masters degree in Computer Science, or equivalent;
  • 7+ years experience in a senior developer and/or technical lead role(s);
  • A firm grasp of a wide range of algorithms, data structures and all the CS stuff you love so much;
  • Programming languages: Java/Python;
  • Experience working with Tomcat, GWT, SQL, Lucene is an asset;
  • 5+ years experience in server backend development;
  • The proven ability to think on your feet, to learn quickly and to justify your decisions.

Compensation Structure:

Salary Commensurate with experience

Test and Verification Engineer

Role Overview

Core duties and responsibilities:

  • Develop test plans and executes both manual and automated test cases; Use software skills to write programs to validate software functionality and identify errors/non-compliance;
  • Design and maintenance of automated testing framework
  • Monitor and analyze test data to identify incorrect tool behaviour and potential causes;
  • Isolate and reproduce errors and identifies causes;
  • Enter bugs into Problem Reporting System for action by development group and follows up;
  • Develop and maintain testing documentation with test case descriptions, specifications and expected results;
  • Issue status report to manager describing results;
  • Recommend alternatives to improve verification time and/or coverage and automate testing where ever possible;

Required Skills and Expertise:

  • Programming languages in Python, Java, HTML, JavaScript, CSS, and jQuery
  • Experience with Selenium Web Driver Automated Testing System
  • Experience with Programming languages in C, C++,C# is an asset
  • Experience with Operating Systems – UNIX (Linux, Solaris), Mac OS X, Windows Vista/7/8
  • Experience using at least one of the Version Control Systems: git, svn, cvs, ClearCase, TFS and Perforce
  • Experience with multiple IDEs such as Eclipse, Wind River Workbench, IntelliJIDEA, Visual Studio is an asset

Minimum Education and Experience

  • University or College degree in Computer programming, web development or equivalent
  • 1-3 years of automated web testing experience

Lead Generation Representative

Role Overview

Responsible for generating and developing viable leads for Klocwork's sales organization via phone, email, and social media. The successful individual will have strong technical aptitude and the ability to develop strong customer relationships in an inside sales role. This position will appeal to someone who has no fear of picking up the phone, enjoys a challenge, and gets a charge out of learning new technologies.

Main Responsibilities:

Essential functions and aspects of the position include but are not limited to:

  • Generate and develop qualified leads within target markets via research and cold calls.
  • Maintain constant communication and coordination with geographically dispersed Regional Sales Managers regarding leads generated and next steps required.
  • Coordinate demonstration schedules for qualified sales leads.
  • Update sales database with latest information regularly.
  • Track and report on all activities to managers.

Required Skills and Expertise:

  • Exceptional verbal communication skills –articulate and quick thinking.
  • Superior relationship building and interpersonal skills.
  • Detail oriented and ability to focus in a fast paced environment.
  • Ability to navigate Fortune 1000 enterprises to find key contacts and motivate individuals to use and/or find out more about Klocwork's solutions.
  • Consistent over quota achievement in a sales capacity.
  • Strong desire and ability to quickly learn new technologies and clearly articulate value propositions.
  • Self-motivated, confident, competitive, well organized and desire for high achievement in lead generation.
  • Team player with ability to work independently.

Education and Experience

  • Bachelor's degree or equivalent.
  • 1-3 years inside sales experience.

Software Developer (C++)

Role Overview

  • Working on our core analysis technology, you'll be creating new algorithms and new ways of detecting weaknesses and bugs in other people's source;
  • You might be working on new checkers, along with working on new fundamentals to help all checkers, as well, you will be working on high performance network distribution code;
  • Your knowledge of compilers, of optimization, of high performance algorithms and data structures, whatever it is that you bring to the table, is what will make you valuable to us and what will have you loving every minute of what you do for us;
  • You'll be a member of a close-knit development team, working in an Agile environment, using our own products to ensure you write and review the best software possible;
  • Like all professional developers you'll be responsible for creating more than just production code – tests, specs, performance analysis, peer reviews, mentoring, support, everything that goes into the modern developer's job expectations;
  • This is a core technology job, working on algorithms, working on performance, and working on what makes our products tick.

Required Skills and Expertise:

  • Masters degree in Computer Science, or equivalent;
  • A firm grasp of a wide range of algorithms, data structures and all the CS stuff you love so much;
  • 1-3 years experience with C++ (Research experience will be counted as work experience);
  • The proven ability to think on your feet, to learn quickly and to justify your decisions;

QA Manager

Role Overview

As QA Manager, you will lead the QA team, drive our test strategy, and play a critical role in the success of our products. You will participate in and oversee the creation, maintenance and execution of Test Plans, Test Suites and Test Cases with a focus on automated testing. Reporting to the Sr. Director of Klocwork R&D, you will own product quality in a fast paced Agile based environment. You must have an extraordinary attention to detail, flexibility in changing tasks and priorities, and the ability to handle pressure in a high-volume, fast-paced work environment.

General Job Duties

  • Manage the QA team, including recruiting, goal setting, performance evaluation, career planning, coaching, etc.
  • Responsible for ensuring the completion of all phases of the testing process including execution of: Installation, Configuration, Integration, Acceptance, Functional and Regression testing to meet the product testing requirements;
  • Supervise the creation of Test Plans, Test Specifications, Test Suites and Test cases as required to ensure adequate testing and auditability of our products;
  • Responsible for the creation of test environments
  • Assist in the design of any necessary tools for Unit, Functional and Performance Testing as required;
  • Lead your team to Design, document, implement and execute tests to achieve project milestones on time and on budget;
  • Participate in the daily Scrum meetings and communicate the results of all testing activities;
  • Participate in the Bug Triage meetings. Make recommendations on potential Hot Fixes. When necessary, assist Technical Support with reproducing customer escalation issues;
  • Assess merits of proposed product enhancements, and ease of use. Advise Engineering and Product Management on effort and risk.
  • Evangelize "Quality" within the engineering organization and to our customers;
  • Continually strive to improve our product, team, tools, and process.
  • Work with diverse teams (Development, QA, Software Support, Product Management and Services) across multiple locations.
  • Mentor junior QA Team members as required in the science and methodologies of Quality Assurance and the goals of Rogue Wave.

Desired Skills and Experience:

  • Excellent communication and collaboration skills,
  • Solid expertise in automation and testing methodologies;
  • Strong Windows, Linux, Solaris, AIX, and Mac OS X experience;
  • Extensive experience developing a test lab in a server virtualization environment (VMware);
  • Strong analytic and problem solving skills;
  • Previous experience with programming languages – Python required; C++/C#/Java a plus.
  • Experience with Selenium (Web testing) or other automation testing tools is a plus;
  • Ability to occasionally work irregular hours to meet deadlines;
  • Some travel may be required for the purpose of off-site software and system applications testing.

Education/Experience Requirements:

  • BS or MS in Computer Science, Mathematics’ or Electronics (or equivalent experience);
  • 7+ years of QA Experience (preferably with Software Development exposure);
  • 3+ years of QA Management experience.

Installation Technology Developer

Role Overview

  • Work with the product managers, architects, team leads and individual engineers to determine installation requirements;
  • Use your own intuition and design sense to create a simple, logical installation workflow;
  • Design, implement, and maintain MSI installers for Windows using Installshield and other similar tools (e.g. WiX);
  • Design, implement and maintain installers for Linux, Solaris, IBM/AIX and Mac OS/X using appropriate tools and technologies depending on platform;
  • Develop installation strategies for major releases, service updates, and patches;
  • Script unattended installations suitable for mass-deployment infrastructure.

Required Skills and Expertise:

  • At least 3 years hands-on experience with creating, modifying and maintaining MSI Installers using InstallShield or WiX;
  • Knowledge of setup.exe packaging, merge modules and patching;
  • Knowledge of packaging and releasing products targeting Windows XP, Vista, 7 and Windows Server;
  • Exceptional knowledge of Windows Installer architectures and best practices;
  • Proficient with C/C++, Java, Python, and scripting languages;
  • Demonstrated understanding of product architecture and lifecycle.

Desired Skills:

  • Knowledge of build automation tools such as Ant, Make, Visual Studio/MSBuild, Maven or Gradle will be considered an asset.
  • Experience with Agile software development processes a plus.

Minimum Education and Experience:

  • University degree in Computer Science or Electrical Engineering or College Diploma in Computing Science and Information Systems or similar.
  • 3 years experience in a similar role.

Personal Characteristics:

  • Ability to work well independently and as part of a team
  • Ability to work with minimal supervision within a fast-paced environment
  • Attention to detail and high level of accuracy
  • Excellent oral and written communication skills