About The Position
We are building a state of the art security platform for large enterprises in the exciting and innovative new field of software containers. Our systems are deployed on thousands of customer servers around the world. A distributed system to watch over distributed systems!
We are looking for a talented software engineer to join our server team, in charge of developing Aqua's management console - a multi-component system with many responsibilities, performing various background jobs and large-scale data processing; supplying REST APIs, a web based UI and more.
In this role, you will take part in further development of our management console, writing features across the entire application stack: SQL queries, business logic, background processes, REST APIs and web-based user interfaces. At Aqua, you will not be writing code for in-house applications. You will be writing code for large technology companies, banks, government agencies and multi-national chains.
Our product is composed of multiple components, mostly installed on-premise in our customer's cloud environments, but also has SaaS components, plugins for various CI/CD systems and many more. Almost everything runs inside containers. It is written in Go - an exciting new language from Google, and heavily depends on free software/open source components. Our web UI is currently written in to Vue.js . We are primarily a Linux company, but our software also supports Windows and Mac. Our R&D team is comprised of both young and experienced developers who love what they do. We are using cutting-edge technologies in an environment that encourages new ideas and experimentation.
- Track record of delivering various features in large-scale applications or core systems. If you've written code in big data applications handling multitudes of data or real-time events, you're in.
- Experience writing multi-component systems or micro-services, with architectures requiring efficient inter-application communication. If you know what Kafka is, and think it's the bee's knees, we will think the same of you.
- Experience writing in a high-level language such as Go, C, Rust, Python, Ruby, etc.. If you're already writing Go, or spent a weekend debugging the worse memory leak ever, that's a big plus.
- Experience writing APIs (either RESTful or not) and RPCs. If you've broken backwards compatibility for your customers once, and dealt with the fallout, we want you (to deal with the fallout again).
- Experience with RDBMS systems (e.g. MySQL, PostgreSQL, Oracle, SQLite) and/or NoSQL databases (e.g. MongoDB, Redis, Cassandra, Couchbase). If you've written queries with more than two joins, or have a strong opinion of why an integer is better as a primary key (or maybe a UUID), we'd like to hear from you.
- Experience with container platforms and orchestrators such as Docker, Kubernetes and OpenShift is a plus. If you can name one way in which a container is different than a regular process, you're golden.
- Lead architecture and planning sessions, perform code reviews, and write documentation.
- Own an entire product development cycle: from definition and design, through implementation, debugging, testing, and integration.
Haven't heard of Aqua? We are a late stage start-up widely known for being the largest pure play cloud native security vendor, focusing exclusively on cloud native technologies such as containers, serverless, VMs and Kubernetes. We recently secured $135M in series E funding pushing us over $1B in company valuation.