Principal Software Engineer - Core Security / Backend c++

Engineering San Jose, California San Francisco, California

Join us as we pursue our disruptive new vision to make machine data accessible, usable and valuable to everyone. We are a company filled with people who are passionate about our product and seek to deliver the best experience for our customers. At Splunk, we’re committed to our work, customers, having fun and most meaningfully to each other’s success. Learn more about Splunk careers and how you can become a part of our journey!


Splunk is looking for a Principal Security Software Engineer to join our mission to secure the core Splunk engine. At Splunk we build software that lets you search, report on, monitor and analyze live-streaming and historical data across the entire IT infrastructure, all from one place, in real-time, and at massive scale. You will have a powerful opportunity to make a major impact on critical and revenue-generating security projects for a multi-billion dollar business.

You will work within our core development team to build complex backend security services and ensure we deliver high quality secure code from day one. You have an extensive development background (C++ required) and are either already an accomplished security engineer, or you are a highly experienced engineer seeking to become an expert in security.

Your ability to keep up-to-date on new developments in security will reinforce your work with multiple teams to develop appropriate protection mechanisms. You will dive deep into the code and produce secure, quality features, and you will provide clear, strategic and architectural leadership.


In this position:

  • You will develop features for authentication, authorization, and data security in a large distributed system.
  • You will collaborate closely with PM and other specialists to understand customer needs and translate them into product features.
  • You will participate in the development of project timelines, implementation design specifications, system flow diagrams, code reviews, documentation, testing and ongoing support of systems.
  • You will guide and mentor other software engineers with a specific focus on software design and architecture.
  • You will maintain and improve existing code and demonstrate pride of ownership for both your own code and the team's codebase.
  • You will both lead large projects and be a contributor to projects led by others.
  • You will help assess and address security vulnerabilities detected by our ongoing Security testing activities


  • 8+ years total development experience
  • Extensive software engineering experience in C++
  • Experience in advanced development, especially in distributed systems and large, complex system environments deployed at scale


  • Experience in building end-to-end products or features for authentication, authorization, and data security
  • Experience with Python or Go
  • Some experience working with security technologies (SSL, TLS, X.509, SAML, OAuth, JWT, AWS KMS, KMIP, PKCS#11, OpenID Connect, etc.)
  • Some experience with low level cryptographic mechanisms like (AES, GCM, PBKDF2, HMAC, SHA2, etc.)
  • Experience building features for both on-premise enterprise security products as well as cloud-based security products


BS, MS or PhD in Computer Science or a related engineering discipline, with security emphasis highly preferred.

We value diversity at our company. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, or any other applicable legally protected characteristics in the location in which the candidate is applying.

For job positions in San Francisco, CA, and other locations where required, we will consider for employment qualified applicants with arrest and conviction records

Thank you for your interest in Splunk!