Engineering
Software Engineer, Node.js
Published: 25 March 2025
Term | Short contract (3-10 days) |
Location | Remote with UK office, list of countries you may be based in |
Compensation | £300-550/day (depending on location and experience) |
Description
We are looking for an experienced Node.js developer to create a web scraping script that logs into an energy provider’s system using user credentials and extracts relevant tariff information. The script should return the following details:
- Tariff Name
- Contract Start Date (if available)
- Contract End Date (if available)
- Tariff Rates applicable to the user’s agreement
Technical requirements
- The script should be implemented in Node.js.
- HTTP requests should be made using fetch, axios, or any other suitable library.
- If advanced protection mechanisms (e.g., CAPTCHA, JavaScript-based authentication) prevent direct HTTP requests, headless browsers (Puppeteer/Playwright) may be used as a fallback.
- The extracted data should be structured as a JSON object.
- Error handling should be implemented for login failures, session timeouts, and data extraction errors.
- The code should be modular and reusable.
Deliverables
- A well-documented Node.js script
- Instructions on how to run the script (including dependencies)
- Any necessary configuration files (e.g.,
.env
for credentials) - Example output JSON
Additional notes
- If the provider has API access for tariff retrieval, that approach is preferred over scraping.
- The script should be designed with scalability and maintainability in mind.
Our process
- Video call with Lead Engineer
- You complete the work
- Demonstrate operation via video call
- Payment and code handover
Your location
To be accepted for the role you must permanently live in one of the countries listed below and have a personal account with an electricity provider at your home address:
🇦🇹 Austria 🇧🇪 Belgium 🇩🇰 Denmark 🇫🇮 Finland 🇫🇷 France 🇩🇪 Germany 🇲🇹 Malta 🇳🇱 Netherlands 🇳🇴 Norway 🇪🇸 Spain 🇸🇪 Sweden 🇺🇸 United States (CA, GA, TX)
Apply via the form or email jobs@flatpeak.com
Was this page helpful?