At Kinaxis, who we are is grounded in our common belief that people matter. Each one of us plays an important part in accomplishing our work, building our culture and making a global impact.
Every day, we’re empowered to work together to help our customers make fast, confident planning decisions. This is how we create a better planet – for each other, for our customers and for generations to come. Our cloud-based platform RapidResponse ensures that the products we need – everything from medicine and cars, to day-to-day items like toothpaste – make it to market and into our hands when we need them with minimal ecological footprint.
We make the world better, and you can too.
Database Engine Software Architect
Job location:(Ottawa, Ontario, CA - Hybrid; other North - American Locations - Remote)
About the team
We’re responsible for the database engine that is the foundation of RapidResponse®. Our database technology offers features that are unique in the industry, such as data versioning and analytics integration.
We’re creating the next generation architecture for our database that is distributed, scales to support big data, and is better suited for Cloud environments.
These are exciting times! We are growing our team to achieve our goals faster.
What You Will Do
- Help define and deliver the future of the RapidResponse® database!
- Learn the existing highly successful database and become aware of its strengths and weaknesses
- Consider new and existing technologies and techniques and evaluate whether and how best to integrate them
- Assist in creating proposals or visions and then evangelize them
- Design elements of the database
- Solicit feedback on proposals and designs. Incorporate feedback to achieve consensus
- Anticipate potential pitfalls and come up with ways to deal with them
- Innovate and create new intellectual property
- Write, refactor and modify complex multi-threaded C++ code with complex interdependencies
- Break down work into sequences of logical pieces for multiple developers. Guide other developers in implementing your designs
- Enhance the testability of the database by increasing the types of automated testing to provide better coverage.
- Implement and guide others in implementation
- Balance complexity, execution time, and memory footprint to deliver performant solutions
- Design algorithms and data structures that minimize memory footprint and perform efficiently
- Share your knowledge by presenting at tech talks, architecture meetings, training events
- Work closely with architects from other areas of the company to achieve common goals
- Answer questions from around the company, including from Sales and Marketing.
- Deal with the most challenging internal and customer bugs
- Collaborate closely with your Agile team members, fellow architects and other stakeholders
Technologies We Currently Use
- C++ for core development
- C# for some infrastructure and testing
What We Are Looking For
- A technical leader with specialized knowledge of database technologies, techniques and data structures as well as awareness of technology trends around databases. A deep understanding of what is going on at the RAM and system level as code executes
- 10+ years of industry experience writing databases. To be clear – we are *not* looking for people with experience using, configuring, tuning, integrating existing off-the shelf databases like PostgreSQL and MySQL. We are looking for people who have written the code that comprises databases.
- A history of quickly learning complex code, preferably C++ code
- A deep understanding of the issues the arise with multi-threaded code
- Background, expertise and experience that enables generation of visions and designs
- Exceptional communication skills and proven experience proposing visions and designs for complex and innovative software. The ability to sell these designs, incorporate feedback and gain consensus.
- A history of innovation
- A mentor and collaborator who enjoys fruitfully guiding the work of junior and senior developers to grow their skills and achieve great results
- Proven experience designing and then planning and structuring the work required for complex initiatives and guiding them through development, testing and deployment into production.
- The ability to work harmoniously and effectively with developers, managers, product managers and executives
- Proven experience applying and augmenting powerful testing framework and strategies
- Proven experience debugging and solving the most difficult and complex bugs
- Proven experience improving the performance of code, and reducing memory footprint
Are you passionate about this area? Check out our Engineering blog entry and please apply!
Nice to have:
- Background in, or understanding of, supply chain management
What we have to offer
- Challenging Work - We love solving highly complex problems. And as the global leaders in our industry, we never stop innovating—our work is never “done. That’s because across our teams and in all roles, every employee is empowered to bring their best ideas forward and to jump in and solve the problems they’re passionate about.
- Great People - We take our work seriously, but we don’t take ourselves too seriously! It’s in our DNA to celebrate, laugh, and have fun. We are stronger, together, when we are open, honest, and above all, real. Every person is valued here and plays an important role in our shared success.
- Global Impact - As a global team spanning continents, boundaries, and cultures, every day we are inspired by the impact our work has on our colleagues, our customers, our communities, and the world at large.
- Diversity, Equity and Inclusion - Diversity, equity and inclusion are more than words to us. They are the guiding principles for building a culture where we celebrate each others’ differences, continuously strive for equality and recognize that inclusion makes us stronger as individuals, a company and a global citizen.
For more information, visit the Kinaxis web site at www.kinaxis.com or the company’s blog at http://blog.kinaxis.com/.
Kinaxis strongly encourages diverse candidates to apply to our welcoming community. We strive to make our website and application process accessible to any and all users. If you would like to contact us regarding the accessibility of our website or need assistance completing the application process, please contact us at firstname.lastname@example.org. This contact information is for accessibility requests only and cannot be used to inquire about the status of applications.