Enhancements to Connection Manager for Wi-Fi Direct functionality on Android, using the Agile Scrum methodology.
The basic framework for Discovery and Connection Setup exists today. We need to add functionality for a user to identify themselves with a given name, as opposed to the default device name from the phone. The user should be able to enter the given name from the GUI.
Any issues identified with previous functionality will have to be resolved.
The software should be modular and provide clean APIs to interface with applications.
Expertise and Skillset Requirements
Android application developer who is extremely well versed in all aspects of Android Java programming and App Testing. The application developer should be able to take a basic app framework, and adapt it for production use. The basic app framework, which is the starting point, will be provided on project initiation.
1. Knowledge of Android components, data structures, processes, threads, process lifecycle, and interprocess communication techniques is required.
2. Knowledge of Android test framework for Unit and Integration testing is required.
3. Development should be done in Android Studio preferably.
4. Anticipating and handing all error scenarios is a must.
5. Designing the app to be usable across multiple screen sizes and pixel densities is necessary.
6. The developer should deliver robust and high quality software.
7. Basic familiarity with Agile Scrum methodology (or other similar framework like Extreme or Iterative programming) is desired.
8. Excellent communication skills – written and verbal, in order to discuss design and implementation details.
Before starting software development for each Sprint, the developer should be able to describe and communicate the design (format is not important - flow charts, bubble diagrams or any other format can be used) to be implemented. Once the Sprint is complete, this design should be updated to capture the exact implementation, including how error scenarios are anticipated and handled. Unit Tests and Integration Tests should be documented and executed (using the Android Studio framework or any other suitable framework), and any issues that are found should be fixed, before delivery of software in each Sprint.