close

PhD Position on Testing Blockchain Applications

Research / Academic
Delft

Blockchains are the backbone technology of many critical systems, including cryptocurrencies. However, the implementation of blockchain systems and applications is fraught with challenges. They are susceptible to software bugs arising from unexpected executions involving asynchrony, message delivery delays, and network or process faults.
Ensuring the correctness and reliability of source code implementing blockchains and smart contracts is paramount, and this hinges on effective software testing. Given the complexity and scale of these systems, detecting software errors through manual testing is often impractical and insufficient.
This PhD project seeks to develop advanced automated software testing techniques specifically tailored for smart contracts and blockchain systems, with a particular emphasis on the XRP Ledger framework. The testing techniques will rely on evolutionary intelligence, fuzzing, and learning-based testing to automate the process of finding software errors and identifying buggy program statements.
Objectives:

  • Design and implement automated testing methodologies for blockchain systems.
  • Address challenges posed by asynchrony, message delays, and network/process faults.
  • Develop a methodology to pinpoint the root cause of concurrency errors/faults

This Ph.D position is part of the University Blockchain Research Initiative (https://ripple.com/impact/ubri/).

Requirements:

We are seeking a candidate who meets the following criteria:
Needs-to-have:

  • Holds a Master’s degree in computer science with a focus on Software Engineering and Software Testing
  • Possesses a strong background in programming using Python, C/C++, or Ruby, with a potential portfolio demonstrating contributions to open-source projects
  • Shows proficiency in writing comprehensive documents and seamlessly integrating production-level software
  • Demonstrates excellent verbal and written English skills

Nice-to-have

  • Prior knowledge of blockchain applications and consensus algorithms
  • Prior knowledge of dynamic and static analysis techniques

Doing a PhD at TU Delft requires English proficiency at a certain level to ensure that the candidate is able to communicate and interact well, participate in English-taught Doctoral Education courses, and write scientific articles and a final thesis. For more details please check the Graduate Schools Admission Requirements.

Salary Benefits:

Doctoral candidates will be offered a 4-year period of employment in principle, but in the form of 2 employment contracts. An initial 1,5 year contract with an official go/no go progress assessment within 15 months. Followed by an additional contract for the remaining 2,5 years assuming everything goes well and performance requirements are met.
Salary and benefits are in accordance with the Collective Labour Agreement for Dutch Universities, increasing from € 2770 per month in the first year to € 3539 in the fourth year. As a PhD candidate you will be enrolled in the TU Delft Graduate School. The TU Delft Graduate School provides an inspiring research environment with an excellent team of supervisors, academic staff and a mentor. The Doctoral Education Programme is aimed at developing your transferable, discipline-related and research skills.
The TU Delft offers a customisable compensation package, discounts on health insurance, and a monthly work costs contribution. Flexible work schedules can be arranged. 
For international applicants, TU Delft has the Coming to Delft Service. This service provides information for new international employees to help you prepare the relocation and to settle in the Netherlands. The Coming to Delft Service offers a Dual Career Programme for partners and they organise events to expand your (social) network.

Work Hours:

36 - 40 hours per week

Address:

Mekelweg 2