Courseiva

200-901 · topic practice

Software Development and Design practice questions

This domain covers the software development and design fundamentals a network engineer needs on the 200-901 exam: Python data structures and control flow, reading and writing code, software architecture patterns, and REST API design conventions. Questions are scenario-based, asking you to pick the correct data type, predict program behavior, or choose the right HTTP status code for an API situation.

Courseiva uses original exam-style practice questions designed for learning and revision. The goal is to understand the concepts, recognise exam patterns, and improve through explanations — not memorise copied exam dumps.

Editorial oversight:Johnson Ajibi· MSc IT Security, IEEE Senior Member
20 questionsDomain: Software Development and Design

What the exam tests

What to know about Software Development and Design

You must be able to read short Python snippets and predict their output, choose the right data structure for a task, identify architecture patterns like MVC, and map REST API situations to correct HTTP status codes. The single most important thing is knowing exactly when Python raises exceptions such as KeyError.

Python dictionaries, lists, sets, and tuples, including which operations raise KeyError or TypeError

Python functions, classes, modules, and file handling used to parse or generate device configuration

Software architecture patterns such as MVC, and the roles of model, view, and controller components

REST API design: HTTP methods, status codes, and JSON payloads for network automation calls

Watch out for

Common Software Development and Design exam traps

  • ▸Confusing a set with a list or dictionary: sets give fast membership tests and uniqueness, but are unordered and unindexed
  • ▸Assuming dictionary access is safe: indexing a missing key raises KeyError, while .get() returns None instead
  • ▸Mixing up HTTP status codes, such as returning 404 instead of 429 when a client exceeds an API rate limit

Practice set

Software Development and Design questions

20 questions · select your answer, then reveal the explanation

A developer is using Git for version control. After creating a new feature branch 'feature-login' from 'main', they make several commits. Meanwhile, another developer has merged changes into 'main'. The developer wants to incorporate the latest main changes into 'feature-login' without creating a merge commit. Which Git command should they use?

Which TWO of the following Python exception handling statements are valid? (Choose two.)

Which TWO of the following are valid Python data types?

An automation engineer is writing a Python script to interact with a REST API that requires authentication. The API returns a 403 Forbidden status. Which scenario best explains this response?

Question 5mediummultiple choice
Study the full Python automation breakdown →

A developer is implementing a Python function that makes an HTTP GET request to an API and returns the response time. Which code snippet correctly measures the elapsed time?

A Python script uses a list comprehension: [x**2 for x in range(20) if x % 2 == 0]. Which of the following is equivalent?

A DevOps engineer is managing a Git repository and wants to discard local changes to a file and revert it to the last committed state. Which TWO commands can accomplish this? (Choose two.)

Which TWO of the following are valid branching strategies in Git? (Choose two.)

Which Python data type is mutable and unordered?

In a RESTful API, which HTTP method is idempotent but not safe?

Question 11mediummultiple choice
Study the full Python automation breakdown →

A Python script sends a POST request to create a new network device resource. The API returns HTTP status code 201 and a JSON response with the device ID. How should the script correctly extract the device ID from the response?

Question 12mediummultiple choice
Study the full Python automation breakdown →

A Python script reads a JSON configuration file named 'config.json' and needs to extract the value of a nested key 'api_key' under 'authentication'. The file structure is: {"authentication": {"api_key": "abc123", "method": "token"}, "timeout": 30}. Which code snippet correctly opens the file and retrieves the api_key value?

A developer is using Git for a project with a feature branch strategy. They have completed work on a new feature in the branch 'feature-logging' and want to integrate it into the main development branch 'develop'. The team requires that all commits on the feature branch be squashed into a single commit before merging. Which sequence of Git commands achieves this?

A network automation script uses Git for version control. The developer wants to revert the last two commits on the current branch but keep the changes in the working directory for further modification. Which TWO Git commands can achieve this? (Choose two.)

A Python function needs to handle both expected and unexpected errors during file I/O. Which THREE constructs are essential for robust exception handling? (Choose three.)

A Python script needs to iterate over a dictionary of network interfaces and print each interface name and its IP address. The dictionary is structured as: {'GigabitEthernet1/0/1': '10.1.1.1', 'GigabitEthernet1/0/2': None}. Which THREE code snippets correctly iterate and print the key-value pairs, skipping entries with None? (Choose three.)

A developer is using Git to manage a project. They have made several commits on the master branch that should have been on a feature branch. They want to move these commits to a new branch called feature-x and reset master to its previous state. Which sequence of Git commands achieves this?

Question 18mediummultiple choice
Study the full Python automation breakdown →

A developer is building a Python application that must parse a configuration file containing nested sections and key-value pairs, such as device hostnames, interfaces, and their attributes. The developer wants a built-in parser that avoids external dependencies. Which file format and standard library module should be used?

A developer is writing a Python function that must make an HTTP GET request to a REST API endpoint and handle potential timeouts. The function should raise an exception if the request takes longer than 5 seconds. Which library and method should be used to achieve this with minimal code?

A network engineer is writing a Python function that accepts a device hostname, an optional port defaulting to 443, and an arbitrary number of additional command arguments. Which function definition correctly supports a default port value and a variable number of extra positional arguments?

Free account

Track your progress over time

Create a free account to save your results and see which topics improve across sessions.

Focused Software Development and Design sessions

Start a Software Development and Design only practice session

Every question in these sessions is drawn from the Software Development and Design domain — nothing else.

Related practice questions

Related 200-901 topic practice pages

Move into related areas when this topic feels solid.

Frequently asked questions

What does the 200-901 exam test about Software Development and Design?
You must be able to read short Python snippets and predict their output, choose the right data structure for a task, identify architecture patterns like MVC, and map REST API situations to correct HTTP status codes. The single most important thing is knowing exactly when Python raises exceptions such as KeyError.
How should I use these practice questions?
Select your answer before revealing the explanation. Then read why each option is right or wrong — this active recall approach builds retention far faster than re-reading notes.
Can I practise just Software Development and Design questions in a focused session?
Yes — the session launcher on this page draws every question from the Software Development and Design domain. Use a 10-question session first to gauge your baseline, then move to 20 or 30 once the weak spots are clear.
Where can I practise other 200-901 topics?
Use the topic links above to move to related areas, or go back to the 200-901 question bank to see all topics.
Are these real exam questions or dumps?
These are original practice questions written to test the same concepts the 200-901 exam covers. They are not copied from any real exam or dump site.