We have a open source product poc being developed using Tornado framework (async) written in object oriented [login to view URL] is a simple server which provides some services over http and websocket. The system is targeted for python 3.5 at the moment and aims to cater atmost 50 users. Most of the work is complete some is remaining. We need a python Tornado (async programming expert to complete the remaining part and help with the deployment).The project is currently very small with 5-10 classes / modules in total.
Details of the POC will be shared to selected developer. This is also an attempt to rope in a long term developer who will be interested working on it every now and then and eventually be part of the product.
Upfront work summary
1. Review what is done and make corrections as needed
+ Add proper exception handling wherever needed
+ return proper json error / success response where applicable
+ Some places need simple validations:
+ Validating request parameters in web handlers
+ Validating filesystem requests - unsafe paths / allowed path etc
+ Validating filesystem related methods in the filesystem module
2. Check and correct (as necessary) async - await mechanism in the code base
3. Implement log tailing similar to how it works in unix using python and asynchronously
4. Add progress tracking to the existing file upload (streaming) mechanism
5. Implement chunked file download mechanism to prevent slowdown
6. Write unit tests for modules / classes.
7. Discuss and implement - Build & Deployment for the project
+ Set up tox based manual build system using the [login to view URL] file already present in project
+ Setup travis based automatic build system on github
+ How can the service be installed on a client machine
+ Deployment using supervisord
+ virtual env support in deployment