Campaign Monitor is seeking a DevOps/Full Stack Software Engineer to join our product teams; someone who will work on automating and scaling our systems for ever-increasing growth. We send and track over 2 billion emails and customer events every month, and our infrastructure needs to scale accordingly so we can deliver the best user experience possible.
More than 150,000 amazing companies of all shapes and sizes rely on Campaign Monitor to manage their email marketing, but there are many more customers we haven't met yet. Our recent $250 million funding will help us find the right people and build the right product to make that happen.
At Campaign Monitor you'll be joining a team of smart and passionate people to solve challenging and interesting problems using the latest technologies. You'll have an awesome computer setup, enjoy 5 star meals prepared by our in-house chefs three times a day, your own latte art prepared by our own barista, participate in our share program, and take part in our monthly team events. To top that off, we’ve got a killer office in the heart of Sydney with 360 degree views of the harbour. We’ve also been awarded as a Top Place to Work from year to year.
Who are you?
You're smart, personable and friendly, and you communicate clearly and respectfully. You live and breathe best-practice software engineering and are passionate about learning new languages and frameworks. You write streamlined, elegant code in a variety of languages. We believe your background is most likely from Golang or C/C++, however, you are really keen on working with Golang, Java and some C# in our code base.
What you'll be working on:
- Develop, improve, and maintain the infrastructure management.
- Manage our deployment, testing, and CI infrastructure.
- Automate repetitive tasks required to maintain a secure and up to date operational environment.
- Measure everything, report on interesting events and alert on critical issues.
- Be available to handle and resolve issues escalated from the production environment as part of an on-call roster.
- Create and update documentation.
- Work with other teams to build, test and roll out systems.
Key Requirements and Experience
- BA/BS degree in Computer Science or related field (In lieu of degree, 8+ years of relevant industry experience).
- Fluency in at least two programming languages (Golang, Java, C/C++, and C#)
- You're comfortable working from the command line, in fact using a GUI is for amateurs
- You've used a range of storage engines (SQL, Elasticsearch, Cassandra, RDS offerings) and know when each type is useful.
- All your infrastructure is code, you're experienced with configuration and orchestration tools for AWS and bare-metal provisioning (Terraform, Kubernetes, Puppet, Chef, Salt, Ansible).
- You know how web applications work, from the underlying network protocols (HTTP, TCP) through to webserver (IIS, nginx), browser behaviour and everything in between.
- Strong knowledge of TCP/IP and UDP networking and troubleshooting with tcpdump, nmap and friends.
- Effective communication skills, via interactive mediums and documentation.
- Big data systems such a Elasticsearch, Cassandra or Hadoop.
- Large scale in-house sending platforms, like PowerMTA.
- Distributed data storage systems like CEPHS or HDFS.
If this sounds like your cup of tea, we'd love to hear from you!