Javascript Engineer / Browser Automation Hacker (Remote)

We are UBIO. We automate the web.

UBIO has built the Automation Cloud, a platform which can robotically perform any online task such as reserving a hotel for your trip to New York, booking a flight to get there and applying for a credit card to pay for it all.

We provide solutions for businesses in the travel and financial services markets. For travel aggregators and metasearch we enable customers to directly buy tickets or book rooms on any airline, hotel or online travel agent. And for price comparison websites, we provide the ability for their users to buy insurance, loan or utility products directly on-site or in-app. In the future we’ll open up the Automation Cloud so developers can easily create and sell APIs to automate anything. There’s a lot more about us on our website at https://ub.io

UBIO is seven years old and currently has 30 employees, a mixture of engineers, product, sales and support staff. We’ve raised £3.5m to date and we were part of Techstars in 2015 and the MasterCard Start Path programme in 2016. Our growth is powered by automating transactions for clients including Google, KAYAK, Trivago, TravelPerk and SnapTrip.

We are embarking on a ground up rewrite of our platform for the next generation of growth and we are beginning to productise our own technologies that have been developed to solve problems for customers as large as Google. We are looking for three new engineers to help this vision and we are planning on doubling the size of the engineering team within the next 18 months.

How we work

We are a fully distributed team in and around Europe. We operate a flexible working policy and offer private healthcare, pension, perks and employee share options to all employees.

Diversity at UBIO

UBIO is inclusive, and we believe diversity drives creative innovation. Our products connect and make sense of information on the web, whatever its source. Similarly, we’re striving to build a culture that reflects all corners of the community. We’ve embraced a commitment to diversity and inclusion where everyone feels empowered to involve themselves regardless of their gender identity, race, age, sexual orientation or background.

The role

We are looking for an optimistic and resilient Automation engineer with a hacker’s mentality.

You will be playing a key part in our automation team, evolving our platform through a lot of collaboration and experimentation. We move fast and often need to hack our way through code before we carry out any significant development work, and you’ll discuss this closely with the Head of Automation or CTO to design a solution towards a feature. You will subsequently develop a prototype (or a few), implement it and take it to production.

Post release, you’ll own that service and ensure that it evolves with the platform accordingly.

We also rely on architectural principles and guidelines to ensure our colleagues can pick up our work in the future, if and when necessary.

Your responsibilities as Automation Engineer will include:

  • Ongoing bot detection prevention

    • Web automation frequently encounters bot detection functionality, even ethical transactional automation. You will need to figure out how bot detection solutions work, and how to work around them. Examples would be FingerprintJS, ClickCease, CloudFlare Bot Management and even various Captcha providers.
    • Getting ahead of the curve with bot detection: behavioural classification, bot challenges, browser detection tests, browser/canvas/webgl fingerprinting, service/web worker, network fingerprinting (http, tcp/ip, tls),
  • Drafting and developing web automation prototypes

    • If significant unknowns exist or risks need to be reduced, you’ll frame your thoughts into a prototype doc and develop a prototype in code or research to resolve those. You may need to develop a few prototypes before we can move on to implementation.
  • Getting features production ready

    • Once prototypes are out of the way, you’ll write tests, refactor and expand on your initial prototypes to get your code ready for deployment. You will base your code on the company’s engineering principles and guidelines.
  • Leveraging and evolving our standards

    • In Automation, our standards are no-code and low-code oriented, but creating web automations gets as iterative as any algorithm can do. Automations are created for both human and machine, and we will count on you to help review and redesign the guidelines as our platform and the web evolves;
    • Some of the tools that we use are extensible by design, and developing and maintaining custom extensions will be part of the regular tasks.
    • In Engineering, we have defined a handful of standards, including a framework for developing microservices. We have also defined architecture guidelines to more clearly inform our future. We will count on you to advance those by adhering to them and providing feedback for improvements.
  • Avoiding pitfalls and learning from failures

    • You will bring experience to the team and will help us avoid difficult paths, but you understand that experiencing failures is a building block for success. Your resilience will be key to navigate these situations.
  • Communicating your needs clearly and responsibly

    • With the support of your team, you will be able to state clearly what is needed to deliver features in a timely fashion. You will do that with a good level of written and spoken English.
  • Owning Service Lifecycle

    • Be able to debug and provide support for services you ship in all environments.
    • Be able to communicate effective metrics for the code you write, be aware of its performance and how we can observe them inline with SLOs.
  • Positively adding to our culture

    • You have a positive outlook in life and you can also have fun away from technology.
    • You are able to focus on how to overcome obstacles, rather than being overly impeded by limitations and dependencies.

You have technical experience in:

  • Javascript or Typescript development in strict mode with Node.js
  • Web scraping, crawling or automated transactions

And it would be great if you also have:

  • Experience with bot detection systems
  • Experience with Selenium, puppeteer or other web automation software
  • Interest in Event Driven and asynchronous communication patterns
  • Experience with microservices
  • Experience with cloud services and providers (Google Cloud and AWS in our case)

Salary based on experience, estimated range around 20000-35000 RON gross / month.

2 Likes