Quantum Engineering challenge

Demonstrate your overall approach to Python development for a role within the Q-CTRL Quantum Engineering team


The Quantum Engineering challenge is a way for applicants to roles within the Q-CTRL Quantum Engineering team to demonstrate their skills and overall approach to solving a challenge based upon a set of requirements.

The requirements are intentionally sparse (the devil is in the details). We don’t want you to do a lot, but what you do should be your best work and should clearly demonstrate you embody the three virtues.

The rules

  1. Read and understand the challenge.
  2. Create a solution that satisfies the requirements.
  3. Send a link to the repository containing your solution to the person who contacted you.

IMPORTANT: The repository containing your solution MUST be public, MUST contain a README.md file, and MUST NOT make any reference to “Q-CTRL” in the repository name, description, or code.

NOTE: You should spend no more than three hours on this challenge.

The challenge

The team would like a convenient tool for creating basic README.md files. The challenge is to create an interactive command line application written in Python which prompts the user for a variety of questions which are then used to generate a README.md.

The requirements

Your solution must:

  • Use only Python for the implementation.
  • Prompt the user for the following:
    • Project name
    • Project description
    • Project homepage
    • Project documentation url
    • Author
    • License name
    • Install command
    • Usage instructions
    • Test command
  • Generate a well-organized README.md from the user inputs.
  • Handle improper inputs gracefully.
  • Include unit tests as appropriate.
  • Include documentation.
  • Capture all dependencies in a pyproject file in the root of the repository.
  • Have a README.md generated using the CLI application.

NOTE: You may use any command line interface framework of your choice.