Principal Software Engineer - UBA Team (12698)
Location: San Jose, CA.
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.
Splunk User Behavior Analytics (UBA) is a machine learning driven solution that helps organizations find hidden threats and anomalous behavior across users, devices, and applications. You will be part of Splunk UBA team and work with other team members, engineering and Product Management to plan, develop and deliver various features and functionalities for the Splunk UBA.
- Architect, design and build robust, fault-tolerant distributed systems for provisioning, management, and monitoring in a multi-threaded, multi-process environment for the UBA Platform
- You will integrate best in class architecture principles and goals into the team’s projects through designs, implementation strategies, and project sequencing
- You will design and implement features & analyze the performance of existing and new features. Identify and fix bugs discovered during use and/or testing of Splunk’s Behavior analytics products
- You'll lead the architecture and design processes as well as collaborate with different engineering teams in a fast paced environment to identify applications for Splunk's emerging technologies
- You will partner closely with User Experience (UX) and Architecture Design teams at design phase of software development life cycle to design & implement Application Programming Interfaces (APIs)
- You'll work closely with data science & security engineers to understand their platform & data requirements.
- You'll collaborate with Product Support Engineering team and other product teams to understand related products and how to integrate and implement new features or fix bugs in the platform
- Write tests and collaborate with Quality Assurance team to ensure features quality.
- Drive a culture of quality, technical curiosity, continuous improvement, and data-driven decision-making
- With your colleagues, you will help shape and execute the technical road map.
Knowledge, Skills and Abilities
- Ability to design and own a set of product features and/or modules using primarily Scala and/or Java languages on Apache Spark/Hadoop based computing infrastructure on Linux environment
- Experience in building big data warehouse, data lakes, and large scale distributed data processing engine
- Has excellent Java/Scala skills with distributed systems design and knowledge of OO and functional programming practices
- Knowledge of shell scripts and/or Python. Unix/Linux environment. Docker/Kubernetes frameworks
- You have experience in load analysis, performance tuning, monitoring and measuring
- Has working experience on real time data pipelines like Kafka etc.
- Strong data structure knowledge and strong Database knowledge of SQL, NoSQL or NewSQL
- Knowledge on code repository and/or automation server tools
- Excellent Team player with good communication and documentation skills
- Requires a minimum of 12 years of related experience with a technical Bachelor’s degree; or 8 years and a technical Master’s degree; or a PhD with 5 years’ experience; or equivalent experience.
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.