What are the responsibilities and job description for the Senior Software Engineer position at Yellowbrick Data?
Yellowbrick Data is a Silicon Valley based startup that invented a Kubernetes based cloud-native data platform for the hybrid multi-cloud world. Yellowbrick’s innovative platform can run in customer’s cloud accounts or on-premises private clouds, offering flexibility while ensuring data residency, localization, and sovereignty, all with significant performance improvements. Major insurers, credit card companies, telcos, healthcare firms and government agencies all trust Yellowbrick to transform data into actionable insights, quickly without compromising data security. Join us to drive business transformation at the forefront of data innovation.We’re a driven R&D team, solving hard-core computer science problems at all levels of the stack. What we do isn’t easy : We design hardware, 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. Our database deploys both on-premises and in the cloud.We are looking for a motivated software engineer to work in our core database team in areas such as query execution, performance optimization, cluster management, addition of semantic search capabilities and efficient storage of document embeddings. You'll have the opportunity to work in all areas of our software stack which includes almost every aspect of computer science - from hardware to operating systems and user interfaces and everything in between. You’re a computer scientist who loves algorithms, massively parallel programming, multicore architecture and performance optimizations. You find compilers, parsers, grammars and compilers interesting, you find parallel sorting, aggregation, indexing and joining algorithms interesting, have a flair for creative solutions to generating more efficient machine instructions, and hopefully you’ve worked in one or more of these areas. You like Big Data algorithms that work at scale and concurrency, embrace massive parallelism of algorithms in distributed systems and don’t get scared by NP complete problems or dynamic programming.Responsibilities : Design, develop, test and ship improvements to our high-performance databaseHelp troubleshoot and fix issues encountered in the fieldQualifications : Bachelor’s degree in Computer Science or Computer Engineering. Master’s degree is a plus6-10 years of experience developing and shipping software that users are successfully running in productionHigh performance parallel, distributed systemsFundamental computer science – as many of these as possible : Hashing, sorting, searching, aggregationIndexingDistributed database algorithmsFile systemsOperating systems – threading, scheduling, memory managementTCP and RDMA networkingMulti-core programming and memory modelsCompilers – front end, internals or back-endSQL and relational databasesInternals of open source or commercial databasesStrong knowledge in one of more of C,C or JavaAssembly language, including vector processingJava application server experienceWorking knowledge of SQL is a plusExperience with cloud APIs and cloud technologies on any public cloud provider (AWS, Azure or GCP) or Kubernetes private clouds is a plusStrong problem-solving abilities and technical leadershipExcellent communication skills and the ability to work collaboratively in a team environmentStrong attention to detail and a passion for building reliable and scalable systemsDemonstrated ability to mentor and guide junior engineers, fostering an environment of learning and collaborationIn office at our Mountain View, CA HeadquartersWe encourage people from underrepresented groups to apply. Come advance with us! In keeping with our values, no employee or applicant will face discrimination / harassment based on : race, color, ancestry, national origin, religion, age, gender, marital domestic partner status, sexual orientation, gender identity, disability status, or veteran status. Yellowbrick Data also strives to prevent other, subtler forms of inappropriate behavior (e.g., stereotyping) from ever gaining a foothold in our organization. Whether blatant or hidden, barriers to success have no place at Yellowbrick Data.Yellowbrick may keep any job application for a period of three years to allow Yellowbrick to consider you for other suitable openings within the Company in the future. If you would like to opt out from the Company’s policy of retaining your information for the purposes of considering you for other suitable openings, please email gail.boddy@yellowbrick.com. The full text of Yellowbrick's California, the European Economic Area and United Kingdom Job Applicant Privacy Notice can be found here.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.