We need a client library written for us in PHP for a web services API we have developed and host. The API is a storage service that is accessed with a REST-like protocol. There are around 30 methods in the web service, each of which needs to be implemented in this client library, the methods perform actions on each of these types of objects:
* Files (upload, delete, etc.)
* Folders (create, rename, delete)
* Misc methods (empty trash etc.)
There is a reference implementation written in both Java and C++ that you can refer to. We would prefer a developer who has solid experience in either of thees languages so that they can understand our current implementations and so they can implement the PHP client library in a similar way.
You can find the full documentation for the API at:
[url removed, login to view]
You will be expected to develop:
* A main class that will expose each method as a function
* A separate class to handle HTTP communication and parsing
* Support for SSL
* Take the API key and private password as variables
* Sample code that will envoke some of the functions/methods
* Test code against each method
* PHP4 compatible code
This toolkit will be released as open source, so you are allowed to use open source code in this toolkit. We expect all code to conform with the coding standard from either the Zend Framework or from the PEAR project (although we don't want the toolkit to rely on either of these frameworks). We also expect the code to be documented, as you will have many other developers using and reading this client library
What we are looking for in a provider:
* Very strong PHP experience
* Strong understanding of OO techniques
* Preferably strong with either C++ or Java, so you can understand the reference implementations
* Strong communication skills
* Long-term relationship for maintenance of code
* Ability to use SVN and an issue tracker
You will need to demonstrate this experience, we are looking for quality programmers who are willing to join our team for this short-term contractors - those that are experienced, can work to a standard and can produce good code and work at our pace.
We will need some form of longer term commitment with us for maintaining the client library, though we can come to arrangement on that outside of this project - quote and spec here for initial project only.
When replying, please outline how you would tackle this project and the relevant experience you have had - we are looking to find somebody in the next 1-2 days so we will respond ASAP and get to know you. Thank you all for your interest in this, I hope we can find somebody here to work with us.