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 software engineering team is spread across our offices in Kitchener-Waterloo, Canada; Austin, Texas; and 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: Java (Android), Objective-C (iOS), C++ (cross-platform)
- Front-End: React, Angular 2+ (with Ionic/Cordova)
- Back-end: Node.js (with TypeScript), Go, RabbitMQ, Postgres, Cassandra, Kafka
- Build & Deploy: Git, Jenkins, Docker, Kubernetes, Helm, Prometheus
Come join us!
The Web Applications Lead will be responsible for designing and building pure web and cross-platform hybrid web apps for Carnegie’s satellite products. From the mobile and web apps our users use to call and text to the back-end administration and self-serve interfaces, you’ll be guiding the development of the suite of applications that form our SatBridge product.
- You’ll be primarily coding in TypeScript, using frameworks like Ionic, Angular 2/3/4, and Cordova
- You’ll spend a good chunk of your time coding - and code-reviewing others to ensure we maintain a high standard of quality
- You’ll spend the rest of your time on architecture, requirements, design, and coordinating development activities
- You’ll be working closely with our IoT, web & network services teams, product/project management, and operations to build the right products for our customers
- You’ll be pushed by your colleagues to deliver quality products in a reasonable timeframe – and trusted to seek input from then take the best action
- You’ll be working out of our office in Kitchener-Waterloo, Canada or Austin, Texas, with occasional travel to our other office
- You have a wide knowledge of computer science/software engineering – through a related degree or diploma, but we also recognize practical experience
- You are comfortable programming full-stack applications, and have been coding – professionally or personally – for years
- You have experience working on large single-page web applications, using tools like Angular, React, Ember, or Vue
- You have experience building for multiple browsers, spanning from mobile Safari and the Android Browser through to Chrome, Edge, and Firefox on the desktop
- You have serious coding skills, in multiple languages – a Mac or Unix focus is OK, but some experience with Windows (or vice versa) would be useful
- You have deep knowledge of web application architecture, including accessing web services, security, managing history, using web storage, and designing for performance and responsiveness
- You have wide knowledge of developing for mobile first, including responsive design, multiple screen sizes, internationalization, and using device APIs like location and audio
- You have experience developing for quality & reliability, and how it relates to mobile web applications in particular – automated testing, performance benchmarking, multi device testing, and continuous integration
- You have some experience with front-end development – both in implementing from a UX/graphical design, and in doing a rough UI yourself
- You have some experience leading a development team and shipping products
- You have some experience using a cross-platform framework to make web applications feel native on mobile
- You want to work in a small, fast-moving team with lots of responsibility (and few roadblocks to getting things done)