Position: Aws or python developer
Company: Streamfa LLC
Category: Python
Experience required: 3y
English level: intermediate

You will need to install a proxy server onto a VPS. You will need to have this connect to the server to access the blocks for the Flex program/app. I need it to check for blocks between 10-20 times per second. Then when a block becomes available I would like it to be grabbed from the server to where a phone can accept it.

Features: 1. Having the ability to check Amazon Warehouse/Whole Foods/Prime locations every 5-10 seconds. faster is better
2. Must have the ability to filter the blocks based on locations, minimum time to arrive, minimum  dollaramount Offer Start time, and Offer End time
3. Must have the ability to cancel the block once the user clicks on the cancel button
4. Must have the feature to control the speed and runtime



How does the Amazon Block script work?

The Block Grabber script is a simple script that runs on a computer. For a production server, the server should be extremely close to the Amazon Flex Blocks server, which is in an instance of AWS in Ashburn VA. The script logs into your Amazon Flex account sends a command to check for blocks (the same as your refresh button on your app), decodes the block information, decides which ones to accept, then accepts the specific block. All of this can occur within a few tenths of a second. In some warehouses, this process can be too long so additional scripting needs to be done in order to minimize computations and delays to beat out other scripts. Getting blocks in these warehouses can be impossible unless there are more blocks or blocks that come out last minute, preventing drivers that are not close by to accept them.

The Amazon Flex login information is not just a simple username and password. It is a digital key that is stored on your phone. You will need to set up your phone so that the internet is routed through a proxy server (your production server). The proxy server can then listen to the login command and capture the digital key. It can then be used by your script to log in. While your phone is linked to the proxy server, you can also check for blocks. The proxy server can output this information and show you what is being sent by your phone (refresh blocks) and what is sent by the Amazon Flex server (block information). Some people check this information daily to ensure that no changes are made. If your program responds with information formatted in an old way, Amazon could pick that up and detect that you are using a script.