Leader- Endurance, Stress & Database Destruction
Yellowbrick Data
2021-12-03 07:41:38
Barkingside, Greater London, United Kingdom
Job type: fulltime
Job industry: I.T. & Communications
Job description
Yellowbrick Data is a rapidly growing Enterprise Data Warehouse start-up headquartered in Silicon Valley - the only credible EDW start-up alongside Snowflake. We are selling into a hot market right at the convergence of Big Data, Enterprise Data Warehousing, IoT and the Edge. Our technology is used by the world's largest insurers, credit card companies, telcos, healthcare firms and marketers. Our customers love our product: Most are repeat buyers, and in many cases we've become the new standard for analytics and data warehousing in their respective enterprises. Yellowbrick is well- funded, having raised $173m from top-tier venture firms.Job OverviewAt Yellowbrick, we're building the world's most advanced, parallel, scale-out elastic cloud data warehouse. It is in business-critical use at dozens of large enterprise customers who depend on it for their operations. It runs in public clouds and on-premises. Our software scales out to hundreds of nodes on multiple clusters. It's a complex software stack, highly available, supports replication for disaster recovery, and shouldn't go down. Our R&D team solves the hardest computer science problems at all levels of the stack. What we do isn't easy: We design hardware, build an SQL UI for Kubernetes, build an operating system, have created an entire enterprise-grade database from scratch with remote support capability, and actively build and maintain business continuity functions and a growing set of ecosystem integrations.We are looking for a highly motivated and driven engineer to lead our endurance & stress team, finding new ways to break our product end-to-end, modelling customer workloads, qualifying releases and creating new scenarios of destruction. You'll help mentor and grow a new team of individuals that will, together, unleash destruction on our data warehouse. You're an individual that takes pleasure in torturing complex server software at scale, to find where it breaks. Where others see distributed systems, you see new thundering herds, network errors and opportunities for things to get out of sync. When others see transactional systems, you see breaks in isolation or chances of inconsistency. Where others see clusters, you think about split brains and quorum. When others see concurrency, you think about race conditions and system overload. Where others see high performance C++ and assembly code, you see stomps, trashes and buffer overruns. Where others see rich authentication, authorisation and access control models, you see potential for escapes, abuse and corner cases. Overall, where others see software that seems to work well, you imagine all the holes and are passionate about finding them.You love automation of everything, appreciate randomness, and are comfortable in taking a white-box and black-box approach to end-to-end systems testing. You're familiar with asynchronous, reactive programming and understand how to poke holes in a software stack written in C, C++, Java, JavaScript. You're good at SQL and understand the basics of database architecture. You love containers and Kubernetes and are comfortable building automation architecture that makes the best use of these technologies. Endless curiosity means that, whenever a customer encounters an issue in the field, you ask yourself "how come we didn't find that?"ResponsibilitiesLead and mentor our new endurance & stress teamDevelop new and exotic test cases to break our software stack, both on-premises and in public and private cloudsModel customer workloadsQualifications2-8 years of experience testing complex software stacksStrong knowledge of and experience with automation toolsStrong scripting skills in python or other high-level languagesGood working knowledge of cloud native tools; Kubernetes / Docker / Helm / Jenkins / Terraform /AnsibleGood working knowledge of SQLGood working knowledge of CI / CD & DevOps cultureGood communication skillsFundamentals - as many of these as possible:Black and white-box testing experienceNetworking - error injection, benchmarking and monitoring, TCP and/or RDMAExperience testing concurrent and distributed systemsExperience testing highly available software stacksUnderstanding of transactional databasesAuthentication protocols and APIsSecurity - Penetration testing tools and stacksObservability - monitoring, logging, tracing stacksBasic database operations - load, unload, backup and restoreExperience with data generation toolsYellowbrick Data is an Equal Employment Opportunity and is an affirmative action employer. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, marital status, protected veteran status, disability status, gender identity or any other category protected by applicable law. We hire and promote individuals solely on the basis of qualifications for the job to be filled.To all recruitment agencies: Yellowbrick Data does not accept agency resumes. Please do not forward resumes to Yellowbrick Data employees or any other organization location. Yellowbrick Data is not responsible for any fees related to unsolicited resumes.