Software Engineer, Core Database
Palo Alto, California, United States
You will report to the Director of Software
Development, and work with the rest of our development and engineering
staff. You are primarily responsible for Yellowbrick’s core query
processing stack. You’ll have the opportunity to work in all areas of the software
stack for our database appliance, which includes almost every aspect of
Computer Science from operating systems to user interface and everything in
between.
We value collaboration, courtesy, and have a work
hard/play hard culture. We offer a rewarding environment in which you will work
with a peer group that is technically bright and fearless in taking on hard
challenges.
A FEW THINGS WE MIGHT ASK YOU TO DO
- Work on
Yellowbrick’s core query execution stack and associated components
- Work on
creating, patenting and implementing advanced execution techniques
- Debug and
enhance existing functionality
- Participate in
design discussions
- Make design
contributions outside of your primary area
- Help
troubleshoot and fix issues encountered in the field
A FEW THINGS WE ARE LOOKING FOR
- 1+ years of
experience designing and developing software
- You are
interested in the cycle of design, development and customer release.
- You are
passionate about high performance and find it exciting to work on parallel
processing and distributed systems
- Fundamental
computer science – as many of the following areas of experience:
- Hashing,
Sorting, Searching, and Aggregation algorithms
- Distributed
database algorithms
- Bloom Filters
- Multicore
programming
- Compiler
front-ends – grammars, parsers, tokenizers, AST and the rest
- Compiler
internals – multi-pass code optimization and extraction of parallelism
and data typing
- Compiler
back-end or virtual machines – machine code generation
- SQL and
relational databases
- Internals of
open source or commercial databases
- Strong knowledge
of and experience with C++ and C
- Experience with Java is a plus