Expert Automation Engineer for BlueStacks

Job ID: 38727827

Budget: €750 – €1,500 EUR

Looking for an Automation Engineer with Experience in BlueStacks and Appium

We are seeking a specialist to develop and automate a system that works through BlueStacks Android emulators to automate operations within a mobile application. The primary objective is to create a distributed system with isolated sessions to work with multiple accounts. The task requires deep knowledge of emulator operations, session management, and mobile app automation.

Primary Responsibilities:

Develop and configure an automation system using BlueStacks and Appium to manage a mobile application.

Launch and manage multiple instances of BlueStacks on a server using Multi-Instance Manager.

Configure and support session isolation for each account, including temporary session management.

Integrate with a backend system to process incoming requests and send results through a bot.


Required Skills:

Experience with Android emulators, preferably BlueStacks and BlueStacks Multi-Instance Manager.

Proficiency in Appium or similar tools for automating mobile app actions.

Familiarity with API management for creating and handling sessions.

Experience with Windows Server for running and managing multiple instances of BlueStacks.

Basic backend development skills (Python, Node.js, or Go) for integration with backend systems and APIs.


Preferred Qualifications:

Experience with DevOps and containerization, knowledge of CI/CD, and container orchestration.

Experience with virtual machines and scalable solutions for running multiple instances.



---

Backend Technical Requirements

Objective

Develop a backend service that processes requests from a bot and coordinates BlueStacks instances to automate operations in a mobile application. The system should support session management, avoid frequent reauthorization, ensure parallel request processing, and securely store session data for long-term use.

Backend Main Tasks

1. Receiving and Processing Requests from the Bot

The bot sends requests to perform a specific operation with parameters (name, surname, location).

The backend validates requests, checks system load, and distributes tasks to active BlueStacks instances.



2. Creating and Managing BlueStacks Instances

Launch and manage instances through BlueStacks Multi-Instance Manager.

Assign unique network settings for each instance (e.g., different IPs via proxies or VPNs) to ensure session isolation.

Manage the status of each instance (start, restart, and shutdown).



3. Authorization and Session Management

Perform authorization using temporary passwords (received via linked email).

Store session data (e.g., cookies or tokens) for each account in a secure storage (e.g., Redis or a database) to avoid repeated authorizations.

Restore sessions for repeat requests using saved data.



4. Integration with Appium for Automation

Connect to each BlueStacks instance via Appium to automate app actions.

Remotely manage actions, including authorization, navigation to specific sections of the app, and task execution.

Handle errors and exceptions related to automation.



5. Sending Results and Error Management

Upon task completion, automation sends the result (e.g., task confirmation) to the backend.

The backend processes the data and forwards it to the bot to notify the user.

Error handling and logging, including error or failure notifications.



6. Monitoring and Scalability

Set up a monitoring system (e.g., Prometheus and Grafana) to track instance status and system load.

Support parallel operation of multiple BlueStacks instances with the ability to add new instances as load increases.

Automatic scaling and resource release as needed.




Backend Architecture Requirements

Programming Language: Python, Node.js, or Go to process requests and interact with BlueStacks and Appium.

Database Management: Redis or PostgreSQL for temporary session data storage.

Bot API: REST API to receive requests from the bot and send results.

BlueStacks Runtime Environment: Windows Server with Multi-Instance Manager support.

Monitoring and Logging: Integration with monitoring systems, such as Prometheus and Grafana, for performance control.


Example Workflow

1. Bot sends request to perform task → 2. Backend assigns available BlueStacks instance and manages its session → 3. Appium automates actions in the app → 4. Session data is saved, and results are returned to the bot.