We're looking for an engineer interested in writing Rust. Experience with the language is not required, but we are looking for experience in some sort of statically typed language and a couple years of experience.
We have several projects using Rust today including the OnePush delivery service
, our stats daemon that runs on each server, and oscachemgr
, a cache manager for our front end servers. We've recently started another Rust project pertaining to analytical work on our ever-growing data set. We're also starting to plan a project to integrate Rust into our Rails application.
In addition to the Rust projects, business needs may at times require you to work on another part of the application such as Rails or infrastructure.
What you'll be doing
- Working closely with a small team shipping lots of code
- Writing Rust and Ruby
- Adding features to and improving our push delivery service
- Working on native Rust extensions to our Rails application
- Open source contributions - we have contributed patches to several crates and released one of our own. We aspire to do more of this as time progresses.
- Contributing to our stats monitoring process (Rust) which runs on all of our servers
- Architecting solutions to address our scaling needs
- Designing and building a custom message queue
Qualities we look for
- Friendliness and empathy
- Proficiency in written and oral communications
- Ability to collaborate well on a team
- Can deliver solutions independently as well
- Love of learning
- 2+ years of experience writing software
- Experience writing with a scripting language such as Node.js, Python, or Ruby
- Experience writing with a statically typed language such as Rust, Java, C++, etc.
- Solid understanding of web service architecture. To be less ambiguous, we are looking for knowledge of the following systems and how they fit together: http clients, DNS, load balancers, reverse proxies, CDNs, application servers (ex. Rails), databases, and caches.
- Open to learning and writing Rust
- Experience extending an interpreted language with native code
- Familiarity with Redis and PostgreSQL
- Proficiency with Linux systems
- Familiarity with POSIX C APIs
- Understanding of how multiplexed I/O works
- Again, these are nice-to-haves. Even if you don't know them, we hope you are interested in learning them!
- Salary: $110k - $140k
- Equity: 0.1% - 0.15%
San Mateo, CA
In keeping with our beliefs and goals, 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. Above and beyond discrimination/harassment based on 'protected categories,' we also strive to prevent other, subtler forms of inappropriate behavior (e.g., stereotyping) from ever gaining a foothold in our office. Whether blatant or hidden, barriers to success have no place at OneSignal.