Mobile Automation Test Developer

About Us

At Carnegie Technologies, we are a strong technical team that builds communications products for the multitude of networks available today.  Whether that’s combining LTE and Wi-Fi together for better-quality VoIP calls that aren’t disrupted when you switch networks, aggregating networks together for smoother video streaming, giving your smartphone the ability to place calls over satellite from anywhere on the planet, or constructing end-to-end IoT systems that take advantage of the latest wireless protocols, we’re always looking for ways to get the best experience at the lowest operational cost.

We come from many different backgrounds and levels of expertise – but to all of us, craft and functionality are equally important.  We constantly learn and hone our skills and incorporate those experiences into every line of code.  We don’t ship “fast” solutions – we ship the right ones for our customers.  We’re also leaders that create quiet time to solve hard problems and the space to focus on the best result.

Our Kitchener-Waterloo, Canada office is the heart of our software engineering team, and works closely with the hardware and operations teams from our company headquarters in Austin, Texas, and our engineering office in Romsey, UK.  You’ll have the opportunity to work with our super talented team of people, from experts in networking, machine learning, and applications to some of the pioneers of Wi-Fi itself. You might even get your name on a patent!

Our technology stack is carefully chosen to give our developers a great development experience – you’ll spend your time building quality software, not on repetitive tasks.  We’ve built tools to ensure our code is consistently formatted, to release after commit, and to automate documentation; and we rely on a shared set of engineering principles when reviewing every line of code we write.  Common technologies we use are:

  • Mobile apps: Java (Android), Objective-C (iOS), Ionic/Cordova (cross-platform), C++ (cross-platform)
  • Servers: Node.js (with TypeScript), React (web), C++ (traffic handling), Cassandra (db)
  • Build & Deploy: Git, Jenkins, Docker, Kubernetes, HockeyApp

Come join us!

The Role

Mobile automation developers at Carnegie are responsible for creating the best test systems, ensuring that our engineering team delivers only the best quality products, every time!  They primarily focus on our Network Convergence Platform client SDKs, which provide connection management, network quality monitoring, analytics, gapless handover, and bandwidth aggregation.

  • You’ll be using a range of automation tools including Appium/Selenium, Cleversheep, Cucumber, and others as appropriate
  • You’ll be using scripting languages like Python, Bash; C/C++ skills are a bonus
  • You’ll be augmenting existing test systems to support new and exciting functionality added to our products
  • You’ll be creating new test systems from the ground up to improve test coverage
  • You’ll be establishing and managing testing environments to ensure that automated test runs are predictable and reproducible
  • You’ll be a key member of our network convergence platform team, helping us to get the right rock-solid features for our customers into production
  • You’ll be working with our development teams to streamline automated testing into our development processes
  • You’ll be working with our Jenkins build systems to ensure that the right automated testing is an integral part of every build
  • You’ll be pushed by your colleagues to deliver quality sytems in a reasonable timeframe – and trusted to seek input then take the best action

About You

  • You have a wide knowledge of computer science/software testing – through a related degree or diploma, but we also recognize practical experience
  • You are comfortable testing in a mobile environment with full-stack applications
  • You have serious testing skills, particularly for mobile applications
  • You have network knowledge, enabling you understand issues in network centric applications
  • You have experience testing quality & reliability, and how it relates to mobile applications in particular
  • You want to work in a small, fast-moving team with lots of responsibility
  • You are excited at the prospect of gaining a first-hand knowledge of exactly how the Internet works