Senior Software Engineer - Distributed Systems
Couchbase - Mountain View, CA

This job posting is no longer available on Couchbase. Find similar jobs: Senior Software Engineer jobs - Couchbase jobs

As a Member of Technical Staff, Core Distributed Systems, you will design and implement cutting-edge distributed, scale-out data infrastructure software systems, which is a pillar for the growing cloud infrastructure. Especially, you will bring Unix systems and server tech kung-fu to the team. You will be part of a development team working on hard problems in a number of areas, including distributed caching, key-value and document data stores, distributed replication, scale-out fault tolerance and data layer reliability. You’ll work with C/C++, Java, C#, Erlang, JavaScript, Python, Ruby and a number of other programming and scripting languages. In addition, Couchbase and its technical staff are active open source contributors for Couchbase, Apache CouchDB, memcached, and other projects.

Responsibilities

Create the world’s best, distributed software server infrastructure products which companies will rely on for mission-critical OLTP needs.

Participate in requirements, architecture, and design specification reviews.

Design and implement key server modules and networking protocol dispatch layers.

Research industry and academic leading-edge algorithms for distributed consensus, replication, consistency, availability and scalability.

Work with peers in an agile development environment.

Develop high-quality software and use unit, component, and end-to-end automation tests.

Requirements

Self-motivated, independent, and high-performance individual, with ability to learn new technologies and become productive extremely fast; strive for challenges with a do-what-ever-it-takes mentality.

2-7 years of commercial or open source software experience (prefer experience with packaged, downloadable software).

Hardcore C is an absolute must.

Built high-performance distributed networked server systems that run cross-platform on Windows/Linux and POSIX infrastructure.

Good to have

Experience with BDD and TDD methodologies and tools like cucumber.

Experience coding with C#, Java, Python, or Ruby.

Experience using various tools such as Bugzilla, git, gnu toolchains (like gcc, autotools, automake)

Excellent analytical skills and fanatical attention to detail.

Solid experience with software development lifecycles.

Ability to work in a fast-paced environment and to be an outstanding team player.

Couchbase - 17 months ago - save job
Recommended Jobs
Java Engineer (Highly Scalable distributed Sy...
Mariya Systems - Santa Clara, CA
Mariya Systems - 2 days ago

Software Engineer IV
Cisco Systems, Inc. - San Jose, CA
Cisco Systems - 7 days ago

Software Development Engineer - Analytics & M...
Amazon Corporate LLC - Palo Alto, CA
Amazon.com - 1 day ago