We are seeking a talented Principal Software Engineer/Architect to work on Qualys’ next-generation Platform & Middleware. Working with a team of engineers and architects, you will be responsible for prototyping, designing, developing and supporting a highly scalable SaaS based cloud security platform. This is a great opportunity to be an integral part of a team building Qualys’ next generation microservices based technology platform processing over a 100 million transactions and terabytes of data per day, leverage open source technologies, and work on challenging and business-impacting projects.
- Co-develop Qualys’ best-in-class next-generation platform and middleware products
- Create high-performance APIs, libraries and microservices that scale to meet/exceed the demands of processing over a 100 million transactions and terabytes of data per day
- Research, evaluate and adopt next generation technologies
- Produce high quality software following good architecture and design principles that you and your team will find easy to work with in the future
- 8+ years as a hands-on engineer developing SaaS based software products and solutions for service oriented deployments in public (AWS, Azure, Rackspace, etc.) or private clouds.
- Have built scalableSaaS platforms utilizing microservices/distributed systemsarchitectureusing:
- RESTful API's consumed by internal and external partners
- Messaging middleware using JMS, AMQP, Kafka, NATS, etc.
- In-memory caching using Redis, Memcached, etc.
- Strong 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.
- Excellent understanding of data structures and algorithms
- Experience with NoSQL databases (preferably Cassandra)
- Bachelors/Masters/Doctorate in Computer Science or equivalent
Bonus Points if you have:
- Built a technology platform from the ground up
- Developed search based applications using Elasticsearch or Solr
- Experience with stream processing frameworks such as Apache Spark or Flink