Software Engineer
About The Position
Aqua Security enables enterprises to secure their container-based and cloud-native applications from development to production, accelerating container adoption and bridging the gap between DevOps and IT security.
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 Seasonal Senior 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 VueJS. 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.
Requirements
At least 9+ years of experience delivering features in large-scale applications or core systems If you've written code in an I/O intensive, highly concurrent applications handling multitudes of data or real-time events, we are looking for you.
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, Java, C++ or, Rust, If you're an expert Go programmer that's a big plus.
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.
Nice to have experience in customer engagement.