Job Description:
We are seeking an experienced Software Developer to design and develop a comprehensive software solution for an indoor kids play area, integrating features for arcade games, billing, customer management, and more. This software will be used for the seamless operation of the play area, including arcade games, food services, toy sales, and membership management.
The ideal candidate will have expertise in Java development, creating visually appealing UI/UX, and building software solutions that are easy to install and maintain. The application should be plug-and-play with no need for customers to install any dependencies. Additionally, the software must be containerized (e.g., using Docker) and should not rely on any paid licenses or third-party proprietary tools. A critical aspect of this project is the reporting system, which must allow users to generate reports in Excel and PDF formats. The software should be built using advanced technologies to ensure robustness, security, and scalability.
Another key part of the system is the ability to read RFID cards, perform balance deductions in the background, and display the remaining balance on the RFID reader display. The developer should have experience interacting with hardware components such as RFID readers to enable smooth integration with the software system. The developer must also have a strong understanding of software licensing to ensure compliance and avoid any licensing conflicts.
Key Responsibilities:
Develop and implement software that supports arcade game management, including adding/removing games, managing licensing, and offering various packages.
Create and manage tariff structures for game play, food, and toy purchases.
Design and implement billing systems that integrate arcade games, food menus, and toys into a single cart.
Develop functionalities to issue RFID cards for customers and manage related data.
Integrate RFID card readers with the software system to read RFID cards, perform balance deductions in the background, and display the remaining balance on the RFID reader display.
Build a user-friendly interface for the management of customer data, including tracking visits, purchases, and membership details.
Reporting is a key feature of this project, so all system functionalities must have integrated reporting capabilities, allowing users to download reports in Excel and PDF formats.
Generate comprehensive reports related to revenue, customer activity, game usage, and membership statistics.
Implement a feature for customizing software settings for specific needs of the play area.
Ensure the software is plug-and-play, meaning customers should not have to install any additional dependencies, making the installation process seamless and hassle-free.
Ensure the software is robust and stable by using advanced technologies for high performance, scalability, and reliability.
Ensure the software installation process is smooth and does not require customers to manually install any dependencies. The entire system should be self-contained and easy to deploy (e.g., via Docker containers).
Develop software with a strong focus on security to prevent any leakages in data or installation vulnerabilities. Security should be a top priority, and all interactions with hardware, user data, and payment systems should be secure.
Ensure the software complies with licensing requirements and does not violate any software licensing agreements or use unauthorized third-party tools or libraries.
Perform rigorous testing and troubleshooting to ensure reliability, security, and user-friendly performance.
Required Skills:
Strong experience in Java development for building robust applications.
Proficiency in UI/UX design to ensure the interface is visually appealing and intuitive. Experience with the latest UI frameworks and design patterns.
Hands-on experience in developing software using MySQL databases for managing customer data and transaction records.
Ability to containerize the software using Docker, ensuring easy installation and deployment on machines.
Experience with installation and uninstallation processes, ensuring that the software can be easily installed without relying on any proprietary licenses.
Ability to bundle all required software dependencies into a single installation package, ensuring that no paid licenses are required for the operation of the system.
Familiarity with integrating free AI tools and plugins within the software if needed for enhanced features or automation.
Strong problem-solving skills and experience with debugging and troubleshooting software and hardware integrations.
Experience interacting with hardware components, particularly RFID card readers, to read RFID cards, deduct balances in the background, and display updated balances on reader displays.
Knowledge of billing system design, including tax, discounts, and multi-item cart management.
Expertise in reporting systems with the ability to create reports across various system functionalities, and allow downloads in Excel and PDF formats.
Deep understanding of software security and measures to prevent vulnerabilities, data leaks, and unauthorized access.
Strong understanding of software licensing, ensuring that no proprietary or third-party licenses are used without proper authorization.
Additional Skills (Optional but preferred):
Experience in mobile application development for customers to track play area usage, make payments, and manage their RFID card.
Familiarity with cloud-based solutions for data storage and reporting.