DSP IO Senior Backend Engineer, Stream Processing
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 importantly to each other’s success. Learn more about Splunk careers and how you can become a part of our journey!
DSP (Data Stream Processor) I/O team is looking for Senior Software Engineers to be part of the Cloud and Data Platform. Our team builds, ships and operates the platform and solutions to collect data as a key service to Splunk on premise and cloud platform, with high availability, scalability, security, and development experience in mind. We are responsible for the large scale data collection platform, a broad range of pull based or stream connectors, and the developer ecosystem such as SDK, API, templates, guide, tutorials, etc.
In this role, you will
- Own and be accountable for the design and development of multiple features in the ultra-high performance system, processing massive amounts of data
- Pay extra attention to non-functional requirements (Performance, Scalability, Reliability, High Availability etc.)
- Be a role model that ensures the team is following Agile software development and quality standards
- Regularly lead design and code reviews, and participate in architecture discussions
- Help team estimate development work, often across a multiple sprint timelines
- Understand the business use cases and contribute to product direction by prototyping innovative ideas
- See opportunities for engineering improvements or directions, and evangelize these successfully
- Receive guidance from principal engineers in their area on thinking beyond their current product features and more towards overall product architecture
- Participate in customer engagements & partner concerns and drive overall resolution
- Build healthy relationships with multi-functional teams
- Work with product manager to influence product feature definition
To be a successful candidate, you have:
- Expertise on two or more mainstream programming languages, such as Go or Java
- Expertise on developing and working with thoughtfully designed HTTP APIs, such as REST or GraphQL
- Expertise on test-driven development, developing different levels of automated tests, such as unit test, functional test, integration test, system test, or performance / load test
- Proficient with CI/CD, such as Jenkins, GitLab CI, or Bitbucket pipeline
- 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 coordinating and coaching the junior members in the team
- Strong communication skills, both verbal and written
- 6+ years of relevant industry experience
- Bachelor’s degree in Computer Science, Computer Engineering or equivalent
Not required, and would be good to have:
- Experience with cloud technologies, such as AWS, Azure, or GCP. Ideally with certifications
- Experience with container technologies, such as Docker. Ideally with container orchestration such as Kubernetes or Docker Swarm
- Experience with stream processing platform, such as Flink, Storm or equivalent
- Experience with Splunk software or a similar analytics solution
- Experience with leading or contributing to open source projects
- Experience with working in a direct customer facing environment
What We Offer You:
- 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, all the way from engineering and QA to product management and customer support.
- Growth and mentorship. We believe in growing engineers through ownership and leadership opportunities. We also believe mentors help both sides of the equation.
- A stable, collaborative and supportive work environment.
- We don't expect people to work 12-hour days. We want 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 dedication, and believe that balance helps cultivate an extraordinary environment.
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.