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 products and seek to deliver the best experience for our customers. At Splunk, we’re committed to our work, customers, having fun and most importantly to each other’s success. Learn more about Splunk careers and how you can become a part of our journey!
Getting a vast variety of massive data in and ready for analysis is never easy. Splunk is looking for Principal Software Engineers to join our Stream Process Service engineering team to design, build and maintain the platform to collect, transform and enrich data in a fast, scale, secure and reliable way both for Cloud and On-premise customers. Our team is responsible for the data ingress and egress of SPS platform which leverages a broad range of cutting edge technical stakes which includes Microservice, Service Mesh, Docker, Kubernetes, Golang, and etc.
In this role, you will
- Drive technology direction within the product and sets the bar for Area teams for technical excellence and delivery.
- Be the technical/architectural lead of a team, who also contributes at the code level (development + test + review).
- Lead architecture discussions regularly, proposes solutions to non-functional factors of our product or platform, e.g. performance, scalability, securability, usability, servicability and etc.
- Be an effective communicator who can be the technical spokesperson for the Team/Area in broader architecture and technology discussion
- Lead high profile initiatives/projects from inception to completion. This includes working closely with PMs on definition, prioritization, and overall project execution, and influencing PM when needed.
- Understand business cases/customer needs and regularly contribute to technology direction.
- Work well with multiple teams under the same Engineering Area and effectively contributes to the overall success of the Area.
- Build relationships with teams across other Areas and uses that effectively to understand cross area dependencies
- Work with PM and can influence PM on features and product direction
- Participate in high profile and critical customer engagements & blocking issues as needed.
- Present own ideas to Senior Management to influence product and process strategies
- Mentor or grow senior engineers or tech leads in your area.
- Actively be involved in technical evaluation during the hiring of engineers.
- Mastery of two or more mainstream programming languages, such as Go or Java
- Mastery of developing and working with thoughtfully designed HTTP APIs, such as REST or GraphQL
- Mastery of test driven development, developing different levels of automated tests, such as unit test, functional test, integration test, system test, or performance / load test
- Expert in cloud technologies, such as AWS, Azure, or GCP. Ideally with certifications
- Expert in container technologies, such as Docker. Ideally with container orchestration experience such as Kubernetes or Docker Swarm
- Expert in stream processing platform, such as Flink, Storm or equivalent
- Expert in messaging system, such as Apache Pulsar, AWS Kinesis, Kafka or equivalent
- Proficient with CI/CD, such as Jenkins, GitLab CI, or equivalent
- Proficient with modern version control system, such as Git
- Proficient with development on multiple operating systems, such as Linux or Unix
- Able to learn new technologies quickly
- Capable of leading and mentoring the senior members in the team
- Strong communication skills, both verbal and written
- 10+ years of relevant industry experience
- Bachelor’s degree in Computer Science, Computer Engineering or equivalent
What We Offer You:
· We don't expect people to work 12 hours a day. We would like you to have a successful time outside of work too. Want to work from home sometimes? No problem. We trust our colleagues to be responsible with their time, and believe that balance helps cultivate an extraordinary environment.
- A constant stream of new things for you to learn. We're always expanding into new areas, bringing in open source projects and contributing back, and exploring new technologies.
- A set of exceptionally talented and dedicated peers, from engineering and QA to product management and customer support.
- A stable, collaborative and supportive work environment.