Mobile Software Engineer at Couchbase
Manchester, United Kingdom
🇬🇧 (Posted Jan 24 2019)
About the company
Couchbase's mission is to be the data platform that revolutionizes digital innovation. To make this possible, Couchbase created the world's first Engagement Database to help deliver ever-richer and ever more personalized customer and employee experiences. Built with the most powerful NoSQL technology, the Couchbase Data Platform was architected on top of an open source foundation for the massively interactive enterprise. Our geo-distributed Engagement Database provides unmatched developer agility and manageability, as well as unparalleled performance at any scale, from any cloud to the edge.
Senior Software Engineer – Mobile
The Couchbase Mobile team is looking for a software engineer to join their Sync Gateway team. Sync Gateway is a data synchronization server that enables Couchbase Server to act as a replication endpoint for our mobile database Couchbase Lite. Sync Gateway maintains up-to-date copies of documents where users need them additionally providing access control and security.
What Will You Do?
As part of our core development team you will be working on the design and implementation of the next generation of features.
Day to day duties will include programming, feature design, bug fixing and code reviews.
Research industry and academic leading-edge algorithms for distributed consensus, replication, consistency, availability and scalability.
Liaise directly with the Technical Support team to help debug and resolve high priority customer issues.
As well as the product itself, you’ll be challenged to improve the tools and processes we use every day.
Help create user-focused documentation for the features you create.
Like open source? So do we: Couchbase and its engineers are active open source contributors.
Skills & requirements
What Are You Like?
BS Computer Science
5+ years programming experience
Experienced in concurrency / multi-threaded programming
Would ideally be able to demonstrate experience in large scale, distributed systems and understand the techniques involved in making these systems scale and perform.
Has the ability to work in a fast-paced environment and to be an outstanding team player.
Familiarity with distributed networked server systems that run cross-platform on Linux and Windows is highly desired.
Working knowledge of version control systems (e.g. Git, Subversion, CVS).
Experience with the GO programming language a plus
Familiarity with REST interfaces a plus