maidsafe.net are seeking an academic partner and a PhD student with an expertise in distributed networking for an Industrial Mathematics Internship.
maidsafe(Troon): Distributed Networking (cloud) Opportunity
Six month PhD internship project in the first instance. Should the intern be successful in this project, this is very likely to result in the offer of a permanent position at maidsafe upon completion of the intern's PhD studies.
Person Specification:
We are seeking a very highly motivated professional with as little ego as possible. There is a significant modesty in the team but an inordinate amount of capability. Loud stars do not fit in well and the more fun loving, self motivated and very capable people do.
The team is also multi cultural which helps as we have the laid back to the highly efficient personalities and they mix very well with just the right amount of debate, which ranges from God to zero with the occasional infinity issue thrown in.
In terms of professional skills the ability to understand C++ would be helpful but more importantly the capability to learn it (which is not a simple task at the level in house), algorithmics and statistical analysis in random systems would be very advantageous. We do feel internally that a complete understanding helps but can also hinder the finding of the better solution, therefore we are more inclined to look at deep thinkers and people who can challenge the norm (people who would like to prove/disprove Reimann for kicks, or question the existence of the colour charge etc.).
Project Description:
This project will consist of the following:
Task 1: Investigate and understand distributed protocols, particularly kademlia, become fully aware of the random actions of network distribution, research true-skill (most important) and related distributed ranking/measurement systems (including samsara as a measurement of self healing) and finally the maidsafe papers. Become familiar with omnet type kademlia simulator.
Outputs:
- Simulate network in stand alone system such as omnet/oversim
- Adjust values of K alpha and beta to show network performance verses stability.
- Include forceK, Beta Refresh and downlists to analyse effectiveness of each.
Note: K Alpha and Beta these are kadmelia parameters.
- K == Number of nodes per K bucket (calculated as the number of nodes that will allow some to go off line during refresh times, but leaving enough to keep the data fresh, we will be altering this part significantly)
- Alpha == Number of parallel searches to do in iterative search / lookup
- Beta == number of Alpha returned before continuing next iteration (this can also be improved dramatically with a split iteration mechanism or even looser parallelism).
Task 2: Simulate account measurement based on Bayesian mathematical propositions as set out in true skill with added maidsafe logic (we will provide brainstorming and suggestions from domain experts to assist the development of this part).
Outputs:
- Provide examples and difference measurements based on altering values of K alpha and beta.
- Provide examples of varying degrees of network churn and stability breakpoints.
- Simulate a connection based closest K implementation and zero refresh with varying values of K (using a connection oriented TCP like transport)
Task 3: Provide development with tests in pseudo code and API signatures to implement this as a black box solution. These should fit with the aforementioned omnet model for visualisation. (same API as kademlia visualisation)
Outputs:
- Running system with tests to show effectiveness of code as created by developers.
- Visualisation and proof of the ranking system.
Which parts of the company will the Intern become familiar with?
There is a graduate program in place where the candidate will become familiar with, accounts, investments, product placement, marketing, board presentations as well as many technical areas of the business (testing, design, implementation design, development, agile development (scrum) etc.)
Industrial supervisor:
Dan Schmidt.
Company size:
8 employees.
Duration of the project:
6 months.
Company location:
Troon, Ayrshire, Scotland.
Application process:
To apply, please send a CV and a cover letter to Vera Hazelwood.