Principal Software Engineer
We are looking for talented and motivated professionals who are interested in delivering large scale distributed software systems using cutting-edge technologies in a culture that encourages autonomous productive teams. Be a part of Qualys Platform team, a team of software engineers innovating cloud security in the next generation Qualys Technology Platform.
- Co-develop with a strong sense of ownership Qualys’ big-data platform that scales to meet/exceed the demands of processing over a 100 million transactions and terabytes of data per day. Architecture, performance, scalability, high availability and security will be your primary goals for delivering a first-rate experience to our customers.
- Work closely with engineering teams, product management and operations to provide platform and infrastructure features and components to support Qualys’ business objectives.
- Produce high quality software following good architecture and design principles that you and your team will find easy to work with in the future.
- 10+ years hands-on experience with developing SaaS based software products and solutions for service-oriented deployments in public (AWS, GCP, Azure, etc.) or private clouds.
- Prior experience with RDBMS systems and NoSQL databases.
- Good hands on experience with system architecture.
- Data platform design / build utilizing Cassandra, Redis, Elasticsearch, Kafka, Ceph, Flink, Spark or similar technologies
- Strong analytical and debugging skills.
- Java programming skills including object-oriented design, prototyping, development, testing, profiling, etc.
- Knowledge of JVM concepts like garbage collection, heap, stack, profiling, class loading, etc.
- Strong in data structures and algorithms.
- Ability to clearly articulate and communicate technical concepts within and across teams.
- Ability to mentor and lead team.
- BS/MS degree in Computer Science, Applied Math or related field.
Bonus Points if you have:
- Built a data platform from the ground up.
- Experience with applying data encryption and data security standards.
- Experience with container and orchestration technologies such as Docker, Kubernetes etc.
- Experience with monitoring tools such as Graphite, Grafana and Prometheus.
- Experience with HashiCorp technologies such as Consul, Vault, Terraform and Vagrant.
- Experience with configuration management tools such as Chef, Puppet or Ansible.
- In-depth experience with continuous integration and continuous deployment pipelines.
- Exposure to Maven, Ant or Gradle for builds.