Principal Software Engineer (Prisma Cloud - Data Security)
At Palo Alto Networks® everything starts and ends with our mission: protecting our digital way of life. It’s inspired by our vision: a world where each day is safer and more secure than the one before. These aren’t simple statements. They won’t be easy either – but we’re not here for easy. We’re here for better. As a company with a foundation in challenging the way things are done, we’re looking for innovators who are as committed to shaping the nature of cybersecurity as we are.
Our mission doesn’t happen by treading softly – no, it happens by defining an industry. It means building products that haven't been thought of. It means selling products with a solutions mindset. It means supporting the infrastructure of a company that moves at an incredible speed – intentionally – to stay ahead of the world’s next cyberthreat.
We're seeking innovators - software engineers who seek to design new products, designing state-of-the-art products that do not exist today. These engineers love to code with a drive to build global products and bring new ideas to develop security disciplines to solve real-world problems. We are looking for leaders who take ownership of their areas of focus and who are driven to pursue problems at every level. Collaboration is at the heart of our culture and we need engineers who can communicate at a high level and work well with multi-functional teams towards achieving a common goal.
We are looking for back-end engineers to help build a scalable and performant micro service architecture with public and private APIs and integrate with a big data processing pipeline.
Contribute in all phases of the product development cycle, from definition, design, through implementation and test
Design robust service to address new product features using Java programming language, with a high focus on quality and execution
Develop functional specifications, assess task requirements and scheduling, and assist in development, debug and support
Suggest and implement improvements to the development process
Clearly communicate goals and desired outcomes to internal project teams
B.S. degree in Computer Science, similar technical discipline or equivalent practical experience, Graduate degree (MS or Ph.D.) in Computer Science or similar technical discipline is preferred
3+ years' of experience with Java based Microservices and REST API design
5+ years' of experience with database architecture design, including scalability, performance, and resilience. Experience with NoSQL databases, such as Cassandra and MemSQL, is preferred.
5+ years' of engineering experience with scalable and distributed software applications and products
Experience with messaging middleware (Kafka, AWS SQS, AWS Kinesis, etc.)
Experience with cloud infrastructure & services (AWS / Google Cloud / Azure )
Good understanding of data processing pipeline designs – including ingestion, ETL, queries, large scale storage is a plus.
Familiarity with CI/CD and Jenkins based deployment pipelines. Experience with GitLab is a plus.
Experience with containerizing applications with Docker. Experience with Kubernetes is a plus.
A focus on quality, with experience writing unit tests and collaborating with quality engineering to develop test plans
Verbal and written communication skills to work with multi-functional groups
Teammate who brings a can-do attitude to a dynamic working environment.