← Back to all jobs

This job has been posted a while ago and might no longer be available.

Senior Back-end web developer (Node.js)

Our platform provides a real-time, group or one-to-one moderated text-based chat, either hosted by us or embedded into the customer’s website using our plugin code.  We provide the ability to use webinar-like functionality during the chat, sharing images, video (live and prerecorded) and polls. Our customers use our platform to engage with candidates and applicants at various stages of their recruitment process – offering people the ability to see what a company is like before joining; providing a helpdesk to answers questions about their application, etc.

We then offer various APIs to our customers, to schedule and manage planned events; embed chat onto their own website; extract data gathered on the platform.

The platform is built with the following:

  • Node.js
    • Key modules: JS, Embeddedjs/EJS, ws, Passport
  • LevelDB
  • PhantomJS for PDF generation, dynamic image rasterization
  • Client-side JavaScriptCSSHTML
  • jQuery

We also use the following as part of our wider hosting/platform environment:

  • VMware vSphere servers
  • HAproxy load balancing
  • NGINX reverse proxy / caching; static asset serving; CDN
  • Kurento for WebRTC to HLS
  • FFmpeg for RTMP to HLS conversion

We are looking for someone to join our development team in a key role and be responsible for owning and delivering items within the current technical roadmap. To do this you need strong JavaScript fluency with ES6+ in Node.JS; an understanding or appreciation of the nuances of real-time comms and a good grasp of using Node to build scalable, low latency applications.  

Responsibilities:

  • Work with the Technical Director, front end development and designers to build out the Meet & Engage product set, with a focus on back-end web server application development
  • Varied development responsibilities, spanning real-time comms (text, voice and video); web application development; working with NoSQL databases; RESTful APIs; MI and reporting
  • Suggest improvements and efficiency
  • Feed into and influence product roadmap
  • Maintenance and troubleshooting existing code
  • Creating and maintaining unit tests
  • Support the business with customer support, issues and bugs when escalated.

About you. You need to be:

Essential:

  • In-depth Node.js and JavaScript / ECMAScript 6+ knowledge
  • Proven track record or portfolio of work, ideally in a real-time comms setting
  • Have experience in design and implementation of low-latency, scalable applications
  • At least 4 years’ experience in software development in industry
  • Bachelors / Masters degree in Computer Science, similar technical subject or similar demonstrable experience
  • Knowledge and familiarity with:
    • Mocha
    • Express
    • Git
    • NoSQL databases (e.g Mongo)
  • Proficiency in technical communication (written and verbal)
  • Happy to work collaboratively with design and development teams

 Desirable – Knowledge of:

  • EJS
  • Jenkins
  • Linux sysadmin / deployment
  • WebRTC
  • Machine Learning, AI