Courseiva
Knowledge + Practice
CertificationsVendorsCareer RoadmapsLabs & ToolsStudy GuidesGlossaryPractice Questions
C
Courseiva

Free IT certification practice questions with explained answers for CCNA, CompTIA, AWS, Azure, Google Cloud, and more.

Certification Practice Questions

CCNA practice questionsSecurity+ SY0-701 practice questionsAWS SAA-C03 practice questionsAZ-104 practice questionsAZ-900 practice questionsCLF-C02 practice questionsA+ Core 1 practice questionsGoogle Cloud ACE practice questionsCySA+ CS0-003 practice questionsNetwork+ N10-009 practice questions
View all certifications →

Product

CertificationsCertification PathsExam TopicsPractice TestsExam Dumps vs Practice TestsStudy HubComparisons

Company

AboutContactEditorial PolicyQuestion Writing PolicyTrust Center

Legal

Privacy PolicyTerms of Service

Courseiva is a free IT certification practice platform offering original exam-style practice questions, detailed explanations, topic-based practice, mock exams, readiness tracking, and study analytics for Cisco, CompTIA, Microsoft, AWS, and other technology certifications.

© 2026 Courseiva. Courseiva is operated by JTNetSolutions Ltd. All rights reserved.

Courseiva is an independent certification practice platform and is not affiliated with, endorsed by, or sponsored by Cisco, Microsoft, AWS, CompTIA, Google, ISC2, ISACA, or any other certification vendor. Vendor names and certification marks are used only to identify the exams learners are preparing for.

HomeCertifications200-901DomainsSoftware Development and Design
200-901Free — No Signup

Software Development and Design

Practice 200-901 Software Development and Design questions with full explanations on every answer.

85questions

Start practicing

Software Development and Design — choose a session length

10 questions~10 min20 questions~20 min30 questions~30 min50 questions~50 min

Free · No account required

200-901 Domains

Software Development and DesignUnderstanding and Using APIsCisco Platforms and DevelopmentApplication Deployment and SecurityInfrastructure and AutomationNetwork Fundamentals

Practice Software Development and Design questions

10Q20Q30Q50Q

All 200-901 Software Development and Design questions (85)

Start session

Click any question to see the full explanation and answer options, or start a focused practice session above.

1

A developer is designing a REST API that will be used by multiple client applications. The API must support versioning to ensure backward compatibility. Which approach should the developer use to implement API versioning?

2

A development team is implementing a microservices architecture. They need to ensure that services can discover each other dynamically without hardcoding IP addresses. Which technology should they use?

3

A developer is writing a Python script that uses the Cisco Meraki API to retrieve a list of networks for an organization. The API returns a JSON array. The developer wants to filter networks where the 'tags' field contains 'production'. Which code snippet correctly filters the results?

4

A developer is writing a Python script that uses the Cisco Catalyst Center (formerly DNA Center) API to get the list of sites. The API returns a response with a 'response' key containing a list of sites. The developer wants to access the 'response' field from the JSON response. Which code snippet correctly extracts the list?

5

A network automation engineer is using Ansible to manage Cisco IOS devices. The playbook includes a task that executes a 'show version' command and registers the output. The engineer then wants to parse the output to extract the IOS version. Which approach should be used?

6

A developer is using the Cisco Webex API to create a room and add members. The API requires an access token with the appropriate scopes. The developer receives a 401 Unauthorized error when trying to create a room. What is the most likely cause?

7

A developer is working with a REST API that uses HTTP Basic Authentication. The developer needs to send a request with the username 'admin' and password 'secret'. Which HTTP header should be set?

8

A developer is using Git for source control. They have made changes to a file and want to temporarily save the changes without committing, then work on a different branch. Which Git command should they use?

9

Which TWO statements about REST API design best practices are true? (Choose two.)

10

Which THREE of the following are common design patterns for microservices? (Choose three.)

11

Which HTTP method is considered both safe and idempotent?

12

A large enterprise is migrating to a DevOps model and needs to automate the provisioning of network devices. The team has chosen Ansible for configuration management and is using a Git repository for version control. The network includes Cisco IOS routers, Catalyst switches running IOS-XE, and ASA firewalls. The team has written Ansible playbooks for each device type. The goal is to have a CI/CD pipeline that automatically deploys configuration changes to the production network after the changes are merged into the main branch. However, during a recent deployment, a misconfiguration was pushed to a core router, causing a 10-minute outage. The root cause was that the playbook that was executed was not the correct one for that device model. The team wants to implement a mechanism to prevent similar incidents. Which approach should the team adopt?

13

A network engineer is developing a Python script to automate the collection of interface statistics from multiple Cisco Catalyst switches using NETCONF. The engineer uses the 'ncclient' library to connect to each switch. The script works for most switches, but for one switch, the connection consistently fails with an authentication error. The engineer has verified that the username and password are correct and that the switch has NETCONF enabled. The engineer suspects the issue might be related to SSH host key checking. The engineer wants to modify the script to bypass host key checking for this specific switch. Which approach should the engineer use?

14

A company uses a CI/CD pipeline to deploy network configurations. The pipeline includes a stage that runs automated tests against a simulated network environment. Which testing strategy does this represent?

15

Which TWO statements about REST API design best practices are correct?

16

Refer to the exhibit. An engineer uses NETCONF to configure an interface. After applying this configuration, the interface is administratively up. However, the interface does not pass traffic. What is the most likely cause?

17

Drag and drop the steps to configure a static route on a Cisco IOS router into the correct order.

18

Drag and drop the steps to deploy a Python script to a Cisco device via RESTCONF into the correct order.

19

Match each Cisco DevNet Associate exam topic to its description.

20

Match each HTTP status code to its meaning.

21

A Python script using the requests library to query the Cisco Meraki API returns a 403 Forbidden error. The API key is correctly set in the header. What is the most likely cause?

22

A network automation team uses a CI/CD pipeline. Which practice best ensures that configuration changes are validated before deployment to production?

23

A Python script used for network automation requires storing an API secret. Which approach is the most secure and recommended best practice?

24

A team uses GitHub for version control and wants Jenkins to automatically run tests when changes are pushed to the main branch. Which trigger should be configured in the Jenkins job?

25

A Python script uses the `requests` library to fetch device details from Cisco DNA Center. The API returns a JSON response with nested objects. To extract the management IP address from the response stored in variable `data`, which code snippet is correct? The JSON structure is: { "response": [ { "managementIpAddress": "192.168.1.1", "hostname": "router1" } ] }

26

An Ansible playbook fails with the error: "mapping values are not allowed here". The relevant YAML snippet is: --- - name: Configure interface ios_config: lines: - ip address 10.0.0.1 255.255.255.0 parents: interface GigabitEthernet0/1 What is the most likely cause of this error?

27

The exhibit shows a JSON response from a Cisco NX-OS API query for interface status. What is the operational state of interface Ethernet1/1?

28

A network engineer runs the Ansible playbook shown in the exhibit, but it fails. The error indicates the module 'cisco.ios.ios_vlan' does not exist. What is the most likely cause?

29

A Python script using ncclient to configure a Cisco IOS XE device fails with an error that the capability 'urn:ietf:params:xml:ns:netconf:base:1.0' is missing. What is the most likely cause?

30

Which TWO of the following are essential steps in a typical Git workflow when collaborating on a feature branch? (Choose two.)

31

Which THREE of the following are key characteristics of a RESTful API? (Choose three.)

32

Which THREE of the following are common tools used in a CI/CD pipeline for network automation? (Choose three.)

33

A developer is troubleshooting a CI/CD pipeline that automatically deploys configuration changes to network devices. The pipeline includes a stage that runs Python unit tests. Which of the following would be a valid test to include in that stage to validate the configuration before deployment?

34

A network engineer is designing a REST API using Python Flask to allow provisioning of VPN tunnels. The API must support multiple clients and must be secure. Which approach is most appropriate for authenticating and authorizing API requests?

35

A CI/CD pipeline for network automation includes a stage that runs Ansible playbooks against a staging environment. The pipeline is triggered by Git commits. After a commit, the pipeline fails because the Ansible inventory file is missing. What is the most likely reason?

36

A developer is designing a REST API for a network automation tool. Which HTTP method should be used to retrieve the current configuration of a network device?

37

A team is using Git for version control. A developer accidentally committed a sensitive file. Which Git command should be used to remove the file from the repository history while keeping it locally?

38

In a microservices architecture, a REST API must support idempotent updates. Which HTTP method and design practice should be used?

39

Which data serialization format is most commonly used for configuration files in Cisco automation tools like Ansible?

40

A developer is writing a Python script to interact with a Cisco device using NETCONF. Which library is most appropriate?

41

In a CI/CD pipeline, a code quality check fails due to a security vulnerability in a third-party library. What is the best practice to address this?

42

Which design principle suggests that a module should be responsible for a single part of the functionality?

43

A REST API returns a 500 Internal Server Error when a client sends a malformed JSON payload. What is the most appropriate HTTP response code to indicate a client-side error?

44

During a code review, a developer notices that a function has multiple nested if-else statements. Which refactoring technique would improve maintainability?

45

Which TWO HTTP methods are considered safe according to HTTP/1.1 specification?

46

Which THREE of the following are direct benefits of using version control in software development?

47

Which THREE of the following are constraints of the REST architectural style (as defined by Roy Fielding)?

48

Refer to the exhibit. A developer is trying to access the REST API on a Cisco IOS XE device but receives a 401 Unauthorized error. What is the most likely cause?

49

Refer to the exhibit. What will be the result of running this Ansible playbook against the 'switches' group?

50

Refer to the exhibit. A developer executes this Python script against a Cisco device. Assuming valid credentials and network connectivity, what is printed to the console?

51

A developer is writing a Python script to interact with the Cisco DNA Center REST API. Which HTTP method should be used to retrieve a list of network devices?

52

When designing a RESTful API for a network automation tool, which status code indicates that a resource has been created successfully?

53

A network engineer is developing a Python application that uses the Cisco Meraki Dashboard API. The API responses are in JSON format. Which Python module is most commonly used to parse JSON responses?

54

A developer is implementing error handling in a script that makes multiple API calls to Cisco ACI. Which approach is best practice for handling transient network failures?

55

In a CI/CD pipeline for a network automation project, which stage is responsible for validating the syntax of YAML configuration files?

56

A developer is using Git for version control of a Python library. A colleague accidentally committed a large sensitive file. Which Git command sequence should be used to remove the file from history without losing subsequent changes?

57

When designing a REST API endpoint to update a network device's configuration, which HTTP method should be used?

58

A developer is designing a Python script that uses the NSO (Network Services Orchestrator) northbound API. Which data format is natively supported by NSO's RESTCONF API?

59

In the context of microservices for network automation, which pattern ensures that each service has a separate database to avoid tight coupling?

60

Which TWO of the following are commonly used HTTP methods for a RESTful API to retrieve and update a resource? (Select TWO)

61

Which TWO of the following Git commands modify the commit history? (Select TWO)

62

Which THREE of the following are common stages in a continuous integration pipeline? (Select THREE)

63

Refer to the exhibit. A developer is writing an Ansible playbook to configure this interface on a Cisco IOS XE device. Which Ansible module should be used to set the IP address?

64

Refer to the exhibit. This JSON response was received from the Cisco DNA Center API. A developer wants to extract the software version of the first device. Which Python expression correctly retrieves '16.12.5' from the variable `data`?

65

Refer to the exhibit. A developer is parsing the output of 'show ip route' using Python. Which regular expression would extract the prefix '10.0.1.0/24'?

66

A developer is writing a Python script to interact with a Cisco device using RESTCONF. The script sends a PUT request to modify an interface configuration. Which HTTP response code indicates that the resource was successfully created?

67

A team uses Git for source control. They want to ensure that all code committed to the main branch passes unit tests and linting. Which Git workflow practice best ensures this?

68

In a Python application that uses the ncclient library to manage Cisco devices via NETCONF, the developer encounters an error: 'ncclient.transport.errors.SessionCloseError: session closed on error'. Which of the following is the most likely cause?

69

Which of the following best describes the purpose of a unit test in software development?

70

A developer is designing a REST API for managing network devices. The API should support idempotent operations for updating device configuration. Which HTTP method should be used for the update operation?

71

A Python script uses the requests library to authenticate to Cisco DNA Center. The script receives a 401 Unauthorized error even though the credentials are correct. Which of the following is a likely cause?

72

Which of the following is a best practice for version controlling large binary files (e.g., network device firmware images) in a Git repository?

73

In Python, which keyword is used to define a function that does not return any value?

74

Which TWO of the following are true about REST API design principles?

75

Which THREE of the following are common steps in a CI/CD pipeline for a Python application that manages Cisco devices?

76

Which TWO of the following are valid ways to handle errors in a Python program that uses the Cisco Meraki API?

77

A junior network developer is tasked with writing a Python script that uses the Cisco NX-API to retrieve the current VLAN configuration from a Nexus switch. The script should output the VLAN IDs in a JSON format. The developer wrote the following code: import requests import json url = "https://192.168.1.1/api/aaaLogin.json" payload = {"aaaUser":{"attributes":{"name":"admin","pwd":"cisco123"}}} r = requests.post(url, json=payload, verify=False) token = r.json()["imdata"][0]["aaaLogin"]["attributes"]["token"] After authentication, the developer attempts to get VLANs using a GET request to "https://192.168.1.1/api/mo/sys/vlan.json" but receives a 401 error. Which of the following should the developer do to fix the issue?

78

A network automation team uses Ansible to manage Cisco ACI fabrics. They have a playbook that creates application profiles using the 'aci_ap' module. Recently, they started using a new Python script that directly uses the Cisco ACI REST API to perform the same tasks. The script often fails with a 403 Forbidden error, although the Ansible playbook works fine. The authentication method is the same: basic authentication over HTTPS. The API user has the same privileges. Which of the following is the most likely cause?

79

A developer is working on a Python application that automates the configuration of multiple Cisco IOS-XE devices using RESTCONF. The application uses the requests library. The developer notices that sometimes the PUT request to update the interface description returns a 409 Conflict error. Upon investigation, the developer finds that the issue occurs when two instances of the application are running concurrently and attempt to update the same interface. The developer wants to implement a strategy to avoid conflicts. Which approach is most effective?

80

A developer is designing a Python script to parse the output of 'show ip interface brief' from a Cisco IOS device. The output is stored in a string variable. The developer wants to extract only the interfaces that are up/up. The current code uses regular expressions but often fails because the interface names contain special characters (e.g., GigabitEthernet1/0/1). Which approach should the developer use to reliably parse the output?

81

A developer is designing a REST API for managing network devices. Which three best practices should be followed for the API design? (Choose three.)

82

A network automation engineer is writing a Python script to interact with the Cisco Meraki Dashboard API. The script currently makes GET requests to retrieve a list of networks and then makes subsequent requests for each network to get device details. However, the script is slow due to network latency. The engineer wants to improve performance without changing the API's functionality. Which approach best addresses the performance issue?

83

A DevOps team is developing a CI/CD pipeline for a microservices application that uses Cisco NSO (Network Services Orchestrator) for network configuration. The application code is stored in a Git repository. The pipeline must automatically trigger a test suite when a pull request is merged to the main branch, but only if the tests pass, then deploy to a staging environment. The team is using Jenkins. A junior engineer suggests using a single Jenkinsfile with a declarative pipeline that includes all stages. However, a senior engineer notes that the pipeline should be designed for reusability and maintainability, especially as the number of microservices grows. Which approach best meets these requirements?

84

Which TWO conditions are valid triggers for a webhook notification in Cisco Meraki?

85

A network engineer is automating the deployment of new branch offices using Cisco DNA Center REST API. The script creates a new site under a parent site using the POST /dna/intent/api/v1/site API endpoint. The script runs successfully but when checking the DNA Center UI, the new site appears under the incorrect parent site. The script uses the following JSON payload: { "parentId": "0a1b2c3d-4e5f-6789-0ab1-2c3d4e5f6789", "name": "Branch-Office-42", "type": "area", "latitude": 34.0522, "longitude": -118.2437 } The parentId is obtained from a GET request to /dna/intent/api/v1/site that returns a list of all sites. The engineer verified that the parentId matches the UUID of a site named 'HQ', which the engineer believes is an area. However, 'HQ' is actually a building site. The engineer is not aware that the site type is different because the GET response does not display the type field prominently. What is the most likely cause of the new site being placed under the wrong parent?

Practice all 85 Software Development and Design questions

Other 200-901 exam domains

Understanding and Using APIsCisco Platforms and DevelopmentApplication Deployment and SecurityInfrastructure and AutomationNetwork Fundamentals

Frequently asked questions

What does the Software Development and Design domain cover on the 200-901 exam?

The Software Development and Design domain covers the key concepts tested in this area of the 200-901 exam blueprint published by Cisco. Courseiva provides free domain-focused practice, mock exams, missed-question review, and readiness tracking across all 200-901 domains — no account required.

How many Software Development and Design questions are in the 200-901 question bank?

The Courseiva 200-901 question bank contains 85 questions in the Software Development and Design domain. Click any question to see the full explanation and answer breakdown.

What is the best way to practice Software Development and Design for 200-901?

Start with a 10-question focused session to identify your baseline accuracy in this domain. Read every explanation — even for questions you answer correctly — to understand the reasoning. Once you score consistently above 80%, move to a 20–30 question session to confirm depth before moving to the next domain.

Can I practice only Software Development and Design questions for 200-901?

Yes — the session launcher on this page draws questions exclusively from the Software Development and Design domain. Choose 10, 20, 30, or 50 questions for a focused session, or click individual questions to review them one by one.

Free forever · No credit card required

Track your 200-901 domain progress

Save your results, see per-domain analytics, and get readiness scores — free, for every certification.

Sign Up Free

Free forever · Every certification included

Practice Session

10 questions20 questions30 questions50 questions

Study Resources

All DomainsPractice TestMock ExamFlashcardsStudy Guide