Mobile client library (SDK) developer

Ably realtime Published: August 10, 2017

Description

About Ably

Ably is a global realtime data delivery platform that powers low-latency communication between internet-enabled devices.  We solve the hardest parts of delivering the service reliably at scale so developers don’t have to.

At its core, we provide a transport for developers to deliver realtime applications, notifications, data syndication, and synchronization at Internet-scale.  Our product is offered as a multi-tenanted, globally distributed, elastic, and completely redundant platform-as-a-service.

The Ably platform is a second generation realtime platform, built from the ground up over more than three years to uniquely solve realtime problems of the future, at scale. These problems include being protocol agnostic, guaranteed message delivery and reliable ordering, massive fan-out or fan-in, and service continuity during network outages and data centre failures. We're delivering billions of messages to millions of devices for global companies like Yahoo, Computer Associates and Offerup. We're excited by the fact we're only getting started; we're growing quickly and on course to soon deliver trillions of messages.

We have a developer-first mindset in everything we do. We hide the complexity of our distributed interoperable platform and package it up for developers as a service with a simple API, great documentation and pro-active support.

We're looking to grow our team with great like-minded people.

Job description

You'll be working with a deeply technical engineering team who collectively bring a wealth of experience and broad technology skills. The calibre of the code we produce is what excites us each day and motivates us each.  If you enjoy solving hard problems that are mostly platform agnostic and theoretical in nature, then you'll love working at Ably.  Our team is made up of a strong remote contingent, however our base is in London and growing. We are strong believers in face-to-face communication where possible. Whilst this is a remote working role, being able to practically travel to London occasionally is highly preferable and working on a similar time zone is a must.

Day to day you can expect to be working on:

  • Working as a programming language polyglot on our open source client library SDKs. We offer client libraries in most popular programming languages and platforms, with our current first class client libraries being Javascript/Node, iOS, Java/Android, .NET/Xamarin, Ruby, Python, PHP, Go.
  • Maintaining at least three of the SDKs yourself, including the Javascript/Node and iOS (Objective-C and Swift) libraries. For the platforms you do not maintain directly, you will be responsible for managing our freelance maintainers of the libraries.
  • Ensuring you keep a breadth with bleeding edge technologies that can be used with the Ably service. You should consider this "lab" work as part of your role to experiment with related new technologies and publish your findings in our blog and Github public repos.
  • Gaining a deep-understanding of the realtime platform, it's protocols and the distributed problems it presents.
  • Collaborating with the team to design, discuss and implement new features in the client SDKs, and occasionally in the realtime system itself.  Code reviews are part of our daily workflow.
  • Diagnosing and fixing customer reported bugs in our client libraries and use of the Ably platform.
  • Ensuring quality control across all client libraries, from unit and integration test coverage through to ensuring the APIs we expose are idiomatic to the platform.
  • Contributing to open source projects that we support or use in our products and client libraries.
  • Taking ownership of our client library API documentation.
  • Suggestions for new features or improvements to our protocol and API specifications.
  • Writing tutorials or examples using our client libraries and/or protocols we support. This will often be accompanied by a blog post.


Benefits

  • Salary range: €45k to €65k.
  • Employee options: Negotiable.
  • Holidays: 25+ days excluding national holidays.
  • Benefit from a truly flexible working environment in which remote working and managing your own working time is the norm.
  • Work in an environment where code quality, technical challenges and delivery is what we all care about.
  • Skills development is intrinsic in the job. We're largely working on unsolved problems each day, and such, there is plenty of scope to widen your knowledge and skillset.
  • Work with genuinely nice people who care.

Requirements

  • Experience: A minimum of a three years of professional experience with Javascript, Objective-C and ideally Swift. You must have experience using both statically and dynamically typed languages, ideally in at least one other language. Additionally, you must be proficient in ideally Java/Android and or .NET, and comfortable working with at least one other scripting language we support such as Python, PHP or Ruby. Experience with realtime and distributed systems is a plus.
  • Pragmatic: A problem solver excited by the prospect of working autonomously solve problems and bring solutions to the team.
  • Fast Learner: We’re looking for software engineers who thrive on applying their knowledge, learning new technologies.  Our stack is diverse, and we expect it to continue to grow.
  • Testing: Experience using testing frameworks and adoption of test driven development where applicable.
  • Infrastructure: Experience with infrastructure and distributed systems is beneficial.
  • Communication: We use tools such as Slack throughout the day to communicate, however we believe in voice conversations to discuss and solve problems. You must be proficient in spoken and written English, be eager to collaborate with the engineering team and constructively welcome code reviews.
  • Customers: Comfortable talking to customers and assisting them with their technical issues and integration.
  • Open source: We prefer developers who have contributed back to the open source community, even if those contributions are small.

Please apply for this role on our Jobs Website

**** NO AGENCIES PLEASE ****