Full-stack JavaScript Engineer

Tido Music

javascript react nodejs react-native aws Old Street, London

About Tido

Tido is a music platform where interactive scores connect to audio, video and tutorials in a €3.9 billion global market. Tido was founded in 2012, when conductor and editor, Brad Cohen, came together with one of the world’s leading music publishers, Edition Peters. Kathryn Knight, a Sing Up founder and a former Publishing Director at Faber Music, joined Tido as Chief Executive at the end of 2014. The company has created a dynamic environment where leading publishers, labels and artists can bring their sheet music and audio to life, and where users can interact with exclusive video, audio, tutorials and historical context, thereby enriching their experience.

Tido’s digital platform serves the global music market. The company’s unique emergence from the publishing world means that serving and understanding the needs of students, teachers, performers and publishers is in its DNA.

Two years ago, Tido partnered with Faber Music to create Mastering the Piano with Lang Lang. Based on a series of successful books, the app takes piano students through five progressive levels of piano practice. Since launching in September 2015, the app has been downloaded over 85,000 times and was featured as ‘Best New App’ and ‘Best App for Learning Music’ in the App Store.

Last September, Tido Music app introduced Piano Masterworks, developed with leading publisher, Edition Peters. The Masterworks concept leverages Edition Peters' timeless content, but will also include content from the world's leading publishers and record labels within 2016. Tido Music app allows you to discover, learn and play essential repertoire from some of the world’s greatest composers — with multi-angle video performances, inspirational masterclasses and in-depth analysis from leading performers and experts.

Tido’s company culture is based on respect, honesty and a passion for music.

Job description

You will be critical in creating and extending the Tido Music platform; a collection of applications designed to help users discover and engage in music. Working closely with the product and design teams to deliver the best possible product, alongside the rest of the Engineering team headed by the CTO.

If you were to join Tido, here are the kinds of things you would do over the course of a typical week

  • Join us in our experiments with React Native.
  • Build a new feature, with tests, that can support our growing user base.
  • Whiteboard a fix to a scaling problem -- and then make it happen.
  • Talk with peers to decide how an API method should work.
  • Collaborate with peers to write, review, or provide feedback on a technical design proposal.
  • Review peers code and suggest improvements where necessary
  • Help our skilled support team triage and solve bugs.
  • Provide support in troubleshooting and addressing a production issue.
  • Contribute to internal tools that help us improve our development process, manage our users, and scale our systems.

Here are things that we consider critical to being a JavaScript Engineer

  • You have curiosity about how things work.
  • You’ve been building web applications professionally and can point to things you’ve worked on.
  • You have experience with functional or imperative programming languages -- e.g., PHP, Python, Ruby, Go, C, or Java (used without frameworks).
  • You can jump into situations with few guardrails and make things better.
  • You write understandable, testable code with an eye towards maintainability.
  • You are a strong communicator. Explaining complex technical concepts to designers, support, and other engineers is no problem for you.
  • You enjoy helping onboard new team members, mentoring, and teaching others.
  • You know how the web works. You know HTTP and TCP/IP and what a good API looks like.
  • You possess strong computer science fundamentals: data structures, algorithms, programming languages, distributed systems, and information retrieval.
  • You also know that the internet is a scary place and understand security concepts deeply and can put them into action to protect us and our users.
  • You know how to build reliable and safe distributed systems and understand the tradeoffs made when engineering a feature.
  • When things break -- and they will -- you are eager and able to help fix things.
  • You are someone that others enjoy working with due to your technical competence and positive attitude.

Our current stack makes use of the following

  • JavaScript
    • Node.js, hapi, react, redux, react-native
  • AWS
    • Elastic Beanstalk, DynamoDB, SQS, ElasticCache, S3, CloudFront
  • Tooling
    • Github, TeamCity, Crashlytics, MixPanel, New Relic, Loggly

Bonus Points

  • Experience building hybrid applications with React Native, Ionic or Cordova
  • Experience with continuous integration and build systems
  • Experience with AWS
  • Experience with Swift and the iOS ecosystem
  • Practical experience of music and music-making