At Carnegie Technologies, we are a strong technical team that builds communications and educational software products. Our SparkEd group builds web-based solutions for board governance, from designating roles and responsibilities, setting goals, monitoring progress, designing rubrics, conducting evaluations, planning events, and distributing meeting materials. We target organizations of all sizes, from small non-profits up through large school boards and large higher-education institutions.
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. Our educational software team uses:
- Servers: PHP, Laravel, and MySQL
- Build & Deploy: Git, Jenkins, Docker, Kubernetes, Helm
Come join us!
The Full-stack PHP Lead will be responsible for designing and building our “SparkEd” suite of products. From board governance to classroom management and testing, you’ll be guiding the development of a family of related web-based products.
- 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 be doing a mix of front-end and back-end development, and delegating similar activities to your team
- You’ll spend the rest of your time on architecture, requirements, design, and coordinating development activities
- You’ll be working with our operations and QA teams to drive higher levels of scale and reliability into our products
- You’ll be working closely with the business/product owners to identify, design, and build new features to delight 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 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 serious coding skills, in multiple languages – a Mac or Unix focus is OK, but some experience with Windows would be useful
- You have significant experience working with PHP, and experience with Laravel in particular
- You have experience working with relational databases like MySQL and Postgres, and know how to structure data & queries to improve performance
- You have experience with scaling web applications – with load balancing, fragment caching, cache control headers, compression, microservices, and page load audits
- You have deep knowledge of web application architecture, including web service security, cloud hosting, high-availability architectures, geo-distribution, performance monitoring, and offline options
- You have experience developing for quality & reliability, and how it relates to web applications in particular – automated testing, performance benchmarking, and continuous integration
- You have some experience working on large single-page web applications, using tools like Angular, React, Ember, or Vue
- You have some experience building for multiple browsers, spanning from mobile Safari and the Android Browser through to Chrome, Edge, and Firefox on the desktop
- 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 Docker, Kubernetes, or other container/orchestration technologies
- You want to work in a small, fast-moving team with lots of responsibility (and few roadblocks to getting things done)