Lead Developer – Core Platform


We are looking for an experienced high-performance developer to join our software engineering team leading the development of our core engine and execution platform. The core engine is responsible for the execution of workflows at web scale, processing data payloads of all sizes on varied schedules with a high degree of reliability backing our SLA.

This position will involve a wide and deep set of problems that cross many computer science specialties including operating systems, distributed job scheduling, and compiler and language design, all with extreme reliability and predictability in mind. The successful candidate is someone who doesnt shy away from tackling multiple difficult problems at once and is well versed on the key design principles that create modern, scalable enterprise applications. You will spend about half your time coding – you must love coding as much as you love architecture and design. The other half of your time will be spent leading a small team of dedicated and talented developers.
7+ years experience in software engineering role including architecture responsibility at product or major component level.

Deep understanding of compilers and language design, operating systems, and distributed data storage architectures.

Strong knowledge of distributed systems fundamentals, including consensus protocols, distributed state synchronization and locking, etc.

Previous responsibility leading a development team or an entire development organization.

Deep experience in at least one of: Node.js, Rust, Erlang, or C.

Deep experience with functional programming concepts.

Passion and experience delivering software with the abilities- scalability, reliability, predictability, etc.

Ability to deeply and intelligently discuss software architecture and explain to internal and external engineers.

Bachelors degree in computer science, mathematics or similar is required. A related Masters or PhD is a plus.


Experience with the Actor model.

Deep understanding of various concurrency models and when to use them.

Experience working directly with an event loop and epoll, IOCP, kqueue, etc (libuv, mio, etc).

Experience writing native C++ addons for Node.js with NAN.

Strong knowledge of networking fundamentals.

To apply for this job please visit the following URL: http://itjobpro.com/55507 →