Jan 13, 2021

Principal Reverse Engineer - Remote

  • Scrapinghub
  • Global, Worldwide
Full Time

AD Description

We are a fast growing and diverse technology business turning web content into useful data with a cloud-based web crawling platform, off-the-shelf datasets, and turn-key web scraping services. Our comprehensive web crawling stack powers crawls of over 9 billion pages per month and is used by everyone from individual developers to Fortune 100 companies.

We're a globally distributed team of over 190 Shubbers who are passionate about web data and data science.

About the Job:

As a Principal Reverse Engineer at Scrapinghub, your key objective will be to find sustainable and scalable solutions to power Scrapinghub's product offerings. You will be using reverse engineering, static, dynamic or concolic analysis in conjunction with Scrapinghub's best in class tools including Crawlera.

You'll have a fair amount of autonomy in this role, but the responsibilities will likely include: establishing & maintaining technical and quality standards, and collaborating with other Scrapinghub teams to ensure that your work is having the biggest impact possible.

Job Responsibilities:
  • Reverse engineer obfuscated Javascript to understand the underlying browser fingerprinting techniques
  • Perform static, dynamic or concolic analysis and fuzzing to determine tracking behaviour
  • Create and execute well designed tests (repeatable, multiple treatments, testable variables, controls, replication)
  • Create best practice product usage guides and reports based on your findings
  • Drive creation of tools and workflows for prototyping successful and scalable solutions
  • Steer product and infrastructure changes based on your findings


  • A hacker mentality to quickly produce proof of concepts in order to get results.
  • Take a logical, measurement-backed approach to prioritizing projects, and enjoy working with others that do the same.
  • Familiarity with techniques and tools for crawling, extracting and processing data, asynchronous communication and distributed systems.
  • A strong knowledge of Javascript/NodeJS and Python along with a broad general programming background; strong problem solver.
  • Knowledge of Javascript frameworks such as Angular, React and tools such as webpack
  • Strong research, debugging, fuzzing and reverse engineering skills including static, dynamic and concolic analysis
  • Strong understanding of operating system and computer networking concepts
  • Understanding of browser engines, browser fingerprinting and ad-blocker mechanisms
  • Excellent communication in both spoken and written English.

Bonus points for:
  • Experience with Decompilers, IDA Pro and C/C++
  • Core contributions to Mozilla or Chromium projects
  • Knowledge of Headless browsers - performance tuning and benchmarking


As a new Shubber, you will:

Become part of a self-motivated, progressive, multi-cultural team.

Have the freedom and flexibility to work from where you do your best work.

Attend conferences and meet with team members from across the globe.

Work with cutting-edge open source technologies and tools.

35 days paid holidays

Enrol in Scrapinghub's Share Programme