I am looking for an experienced developer who can create a web admin dashboard to display user check-ins/check-outs, display a map checkins, and offer some basic report building based on that data, eg: how long a user was checked in this day, how long they are checked in on average, etc etc. Reports need to exported to multiple formats: xls, csv, txt, xml, and so on.
User management will be a key issue. The platform must be built from the ground up to be multi-tenant. There will need to be Companies with Teams that will need to be created and managed. For example, Company A has X number of Teams with each Team having a manager and members. Every end-user will belong to zero or one Team. Company A will have users M, N, and O. Company B will have users X, Y, and Z. Company A should never know Company B exists and vice versa. When an admin for Company A logs in, they should see all reports for users M, N, and O. The admin for a particular Company will need to have the ability to setup users, assign them to teams, move them between teams and remove them from the system.
The user information in the field will need to include an extensible number of fields (N-many) with 7 being defined in phase 1 as: first name, last name, cell phone number, pay rate, device token, employee ID, and GUID.
I also need REST endpoints where our mobile app (in development) can check a user in with a timestamp, geolocation, and optionally some additional attached data such as device ID, location name, etc etc. Responses should be JSON. All information will be stored in a database based on your professional opinion (mySQL, redis, couchDB, mongodb, cassandra, etc etc etc).
Strong English skills preferable. Proof of prior work and expertise required.
This is for an ongoing project. If you are selected to fulfill this contract, it is likely that you will be hired on on a continuing basis.