Let your talent run free

With many open positions worldwide, find the right position in the right location for you!

Software Engineer-Cloud

Hyderabad, India · Full Time

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.

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 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

  • Track record of delivering various features in large-scale applications or core systems with min.5+ years of experience. .
  • 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, Python, 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 any one of the Cloud providers such as AWS/Azure/GCP is a must
  • Experience in provisioning infrastructure using IaC tools like Terraform/CloudFormation is a plus"
  • Experience with Serverless - Lambda functions, step Functions – (a must)
  • Linux experience - Must
  • Experience with Docker is must.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.
  • Are you a free software/open source nerd? Do you maintain open source projects? Are you a Hacker News reader? Do you remember the days when you had to compile your own Linux kernel? Do you believe it should be called GNU/Linux? Have you ever been in a fight with an Emacs user? Are you an Emacs user? Well, we have the job for you!