Position: Software Engineer, Java Middleware (Prague)
Company: Pure Storage Czech Republic
Experience required: 5y
English level: intermediate

**FlashBlade Team**

The FlashBlade team is responsible for FlashBlade product. With the FlashBlade product, we are building a scale-out all-flash file and object store, designed for the modern world. To really understand how our customers work with data, we are deeply immersed in AI, modern backup, log analytics with Splunk and Elastic, data pipeline with Kafka, cluster computing with Spark, and many more use cases.

**You will love it on the FlashBlade team if you:**

    - Want to understand how modern applications - like AI or Splunk - work with data and how we can make it better.
    - Are ready to dive into a complex problem and be the one who will drive it to a resolution.
    - Enjoy working with distributed systems, algorithms, operating systems, Linux kernel, database internals, hypervisors, containers, compilers and hardware… or at least some of those.
    - Want to work with other great engineers and develop or refine skills that will serve your entire career.
    - Enjoy working in a collaborative team environment in an open office.

If this describes you, let's talk! You can take a part in changing how the world works with data.

**IN THIS ROLE YOU WILL BE...**

    - Working on full lifecycle application development
    - Designing, developing and maintaining customer-facing and internal-facing API and command line interface for end to end configuration and management of FlashBlade products using Java, Python and beyond
    - Experimenting with new technologies and architectural patterns such as microservices or data processing pipelines in order to push the state-of-the-art and innovate new solutions
    - Collaborating with peers and stake-holders to identify requirements and take solutions from initial design to production
    - Bringing a focus on design, development, unit testing, code reviews, documentation, continuous integration and continuous deployment

**What You’ll Need To Bring To This Role...**

    - A minimum of 5 years experience using Java or related programming languages and the enthusiasm to learn other programming languages
    - Proven design sensibility and the willingness to work in a collaborative, team oriented environment
    - Experience in any number of related systems software projects e.g: Distributed systems, Operating systems, Linux Kernel, Database internals, Hypervisors, Containers, Compiler Optimization, etc.
    - A BS degree in Computer Science, advanced degrees are a bonus
    - Must be able to work in a hybrid home/open office environment