Talent.com
eReader Senior C++ Developer (12 month contract)

eReader Senior C++ Developer (12 month contract)

Rakuten KoboToronto, Canada
30+ days ago
Salary
CA$130,000.00–CA$140,000.00 yearly
Job type
  • Full-time
Job description

The Role

Rakuten Kobo's eReader team is looking for an experienced Software Developer to work on our range of eReader devices. You will be joining a software delivery team of ~15 to work on building and enhancing some of the top eReaders in the market.

Here are some of the things we do and strongly believe in :

  • We follow an Agile development process and teams are encouraged to try new things and make suggestions to continuously improve
  • We’re dedicated to crafting high quality, peer reviewed code and we’re working on growing our automated test suite
  • Every member on the team has a voice and is welcome to contribute to planning and designing
  • QA is embedded on our development teams and are involved in projects from day one
  • We host regular learning sessions on various engineering topics hosted by members of the team

Responsibilities :

As a member of an Agile development team :

  • Design, implement, and test new functionality for Kobo eReader devices
  • Propose and carry out refactoring within the codebase to improve design and quality
  • Debug and fix defects found by QA and customers
  • Review code for other developers on the team
  • Estimate the effort for future work as an input to planning
  • Collaborate within the eReader team on improvements to our processes and code base.
  • Share your knowledge to help grow other members on the team and in turn learn from other members on the team.
  • Requirements :

  • Strong ​object-oriented design skills, incorporating design principles and patterns
  • Strong in identifying and explaining trade-offs and rationale
  • Converting final state designs into a sequence of smaller testable incremental steps
  • Strong skills in reviewing code and providing feedback (with rationale) to improve code
  • Following modern development best practices in C++11 (or newer)
  • Experience developing graphical user interfaces in C++ using Qt or a similar library
  • Experience with embedded development, preferably on Linux
  • 5+ years of experience as a developer in an Agile development environment
  • Strong written and verbal communication skills in English
  • Familiar with : Multi-threaded applications development, Web technologies (JavaScript / CSS / HTML / HTTP / etc.)
  • Bonus points :

  • Experience with GCC, ARM toolchains, and shell scripting
  • Experience with writing and maintaining automated tests in C++, ideally including :
  • Use of dependency injection and mocking frameworks
  • Use of test frameworks such as Google Test
  • User interface tests
  • Experience with TDD
  • Familiarity with the EPUB format / standard
  • EInk screen experience
  • Database experience with SQLite