.Net Coding Specialist (DCS) BETA Certification

ASP.NET Core is a cross-platform, high-performance, open-source framework for building modern, cloud-enabled, Internet-connected apps. With ASP.NET Core, you can: Build web apps and services, Internet of Things (IoT) apps, and mobile backends. Use your favorite development tools on Windows, macOS, and Linux.

What are the benefits of getting a .Net Certification?

The DCS is a globally recognized industry certification on .Net programming, which grants coding specialists, software developers, and IT professionals the ability to assess their knowledge and get credentials for their programming skills.

The unique peculiarity of the DCS Certification is the assessment modality, which consists of a real live coding environment, offers candidates the ability to write proper code to perform task-based questions. This technology is called LITA (Live in the Application) and Knowledge Pillars is one of the very few organizations able to provide this very advanced assessment solution.

.Net (DotNet) is a powerful language to learn boasting a reliable architecture that can deliver great exposure to varied software tools and programs. It offers a great career hike, those who are able to prove their .Net skills see a growing demand in diverse career opportunities.

Exam Details

Number of questions: 35

Time limit: 45 minutes

Passing score: 75%

Format: Linear and Live-in-the-App

The examination procedure
The students will have to answer all the question within the given timeframe.

They are free to ignore as many questions as they want. They will have the option to flag the questions and then review them at the end of the test (within the 45 minutes timeframe). All unanswered questions will be marked as incorrect.

When the test finishes the result of the examination is sent to KP’s server for storing.

Exam Objective Domains

Candidates are expected to demonstrate a firm background at developing and debugging simple programs using .Net (DotNet). Prior to taking the exam, a candidate is expected to have approximately 150 hours of hands-on experience or lectures on developing using .Net (DotNet). 

The elevated level of preparation required is derived by the industry-standard level of the exam and the fact that this certification reflects the candidate’s readiness to enter the job market. Moreover, this Certification is used as a job placement index by recruiting managers, for the correct placement of a job seeker. Knowledge Pillars DCS use a task-based format in order to ensure the validity of the results.

To optimize the examination experience for the Candidate, Knowledge Pillars has taken certain steps to utilize real .Net (DotNet) environment during the examination, as well as to ensure stable experience for the examinées. The exam is provided both in Testing Centers, or remotely, via the remote proctoring system.

Skills Measured:

  • Design the application architecture
  • Design the build and deployment architecture
  • Design the User Experience
  • Develop the User Experience
  • Troubleshoot and Debug Web Applications
  • Design and Implement Security 
  1. Design the application architecture
  • Plan the application layers

Plan data access; plan for separation of concerns; appropriate use of models, views, controllers, view components, and service dependency injection; choose between client-side and server-side processing; design for scalability; choose between ASP.NET Core and ASP.NET; choose when to use .NET standard libraries.

  • Design a distributed application

Design a hybrid application; plan for session management in a distributed environment; plan web farms; run Microsoft Azure services on-premises with Azure Pack; enable deferred processing through Azure features (including queues, scheduled, and on-demand jobs, Azure Functions, and Azure Web Jobs).

  • Design and implement the Azure Web Apps life cycle

Identify and implement Start, Run, and Stop events; code against application events in applications; configure startup tasks, including IIS, app pool configuration, and third-party tools.

  • Configure state management

Choose a state management mechanism including in-process, out of process, and Redis-based state management; plan for scalability; use cookies or local storage to maintain state; apply configuration settings in web.config file; implement sessionless state (including query strings; configure middleware to enable session and application state in ASP.NET Core.

  • Design a caching strategy

Implement page output caching and data caching; create cache profiles; implement HTTP caching; implement Azure Redis caching; plan a content delivery network (CDN) strategy, for example, Azure CDN.

  • Design and implement a Web Socket strategy

Read and write string and binary data asynchronously; choose a connection loss strategy; decide when to use Web Sockets; implement SignalR; enable web socket features in an Azure Web App instance.

  • Design a configuration management solution

Manage configuration sources, including XML, JSON, and INI files; manage environment variables; implement Option objects; implement multiple environments using files and hierarchical structure; manage sensitive configuration; react to runtime configuration changes; implement a custom configuration source; secure configuration by using Azure Key Vault; use the Secret Manager tool in development to keep secrets out of your code for configuration values.

  • Interact with the host environment

Work with file system using file providers; work with environment variables; determine hosting environment capabilities; implement native components, including PInvoke and native dependencies for hosts including Linux and Windows; use ASP.NET hosting on an Open Web Interface for .NET (OWIN)-based server.

  • Compose an application by using the framework pipeline

Add custom request processing modules to the pipeline; add, remove, and configure services used in the application; design and implement middleware; design for kestrel, Http.sys web server and IIS; design and implement startup filters.

  1. Design the build and deployment architecture
  • Design a browser artifact build strategy

Design a JavaScript build pipeline using Gulp, Grunt, npm and Bower; design an artifact build strategy using Less, Sass and Font Awesome; design and implement a bundling and minification strategy for broswer artifacts, including JavaScript, CSS and images.

  • Design a server build strategy

Manage NuGet dependencies; target runtimes, including the full .NET Framework, .NET core, and .NET standard; manage debug and release configurations, including compilation and optimization options; include or exclude files from build; manage build sources, including content, resources, and shared files; implement metadata for projects, including version, release notes, and descriptions; define other build options, including xmlDoc and warningsAsErrors; work with static files in ASP.NET core.

  • Design a publishing strategy

Implement application publishing using dotnet.exe; manage publishing options in csproj; implement additional tooling; implement pre-publish and post-publish scripts; implement native compilation; publish to Docker container image.

  • Implement an Azure deployment strategy

Deploy Azure Web App using supported deployment models including FTP, Kudu, Web Deploy, and Visual Studio Publishing Wizard; provision ARM- based resources while deploying applications; implement deployment environments, including dev, test, and prod in Azure; use deployment slots for staging sites; deploy to Azure Stack.

  • Implement a on-premises deployment strategy

Deploy application to IIS using Web Deploy, xcopy, and Visual Studio Publishing Wizard; deploy application to Windows Nano Server, deploy application to IIS Hosted Web Core, deploy application to HTTP.sys web server; deploy application to Kestrel on Windows and Linux; implement reverse proxying to Kestrel using IIS and Nginx.

  1. Design the User Experience
  • Create elements of the user interface for a web application

Create and apply styles by using CSS; structure and lay out the user interface by using HTML; implement dynamic page content based on a design.

  • Design and implement UI behavior

Implement client-side validation; use JavaScript to manipulate the DOM; extend objects by using prototypal inheritance; use AJAX to make partial page updates.

  • Design the UI layout of an application

Implement partial views and view components for reuse in different areas of the application; design and implement pages by using Razor Pages; design and implement layouts to provide visual structure; define and render optional and required page sections; create and use tag and HTML helpers to simplify markup.

  • Plan a responsive UI layout

Plan for applications that run on multiple devices and screen resolutions; use media queries and Bootstrap’s responsive grid; detect browser features and capabilities; create a web application that runs across multiple browsers and mobile devices; enable consistent cross-browser experiences with polyfills.

  • Plan mobile UI strategy

Implement mobile specific UI elements such as touch input, low bandwidth situations, and device orientation changes; define and implement a strategy for working with mobile browsers.

  1. Develop the User Experience
  • Plan for search engine optimization and accessibility

Use analytical tools to parse HTML; provide an xml sitemap and robots.txt file to improve scraping; write semantic markup for accessibility, for example, screen readers; use rich snippets to increase content visibility.

  • Plan and implement globalization and localization

Plan a localization strategy; create and apply resources to UI including JavaScript resources; set cultures; implement server side localization and globalization.

  • Design and implement MVC controllers and actions

Apply authorization attributes, filters including global, authentication, and overriddable filters; choose and implement custom HTTP status codes and responses; implement action results; implement MVC areas; implement Dependency Injection for services in controllers.

  • Design and implement routes

Define a route to handle a URL pattern; apply route constraints; ignore URL patterns; add custom route parameters; define areas; define routes that interoperate with Single Page Application frameworks such as Angular.

  • Control application behavior by using MVC extensibility points

Create custom middleware and inject it into the pipeline; implement MVC filters and controller factories; control application behavior by using action results, model binders, and route handlers; inject services into a view.

  • Design and implement serialization and model binding

Serialize models and data using supported serialization formats, including JSON, XML, protobuf, and WCF/SOAP; implement model and property binding, including custom binding and model validation; implement web socket communication in MVC; implement file uploading and multipart data; use AutoRest to build clients.

  1. Troubleshoot and Debug Web Applications
  • Prevent and troubleshoot runtime issues

Troubleshoot performance, security, and errors; implement tracing, logging, and debugging including IntelliTrace; enable and configure health monitoring including Performance Monitor; configure and use App Insights runtime telemetry.

  • Design an exception handling strategy

Handle exceptions across multiple layers; use MVC middleware to configure error handling; use different exception handling strategies for different environments; create and display custom error pages; configure a custom pipeline for error handling; handle first chance exceptions; configure and use App Insights; log application exceptions.

  • Test a web application

Create and run unit tests, for example, use the Assert class, create mocks and stubs; create and run web tests including using Browser Link; debug a web application in multiple browsers and mobile emulators; use Azure DevTest Labs; use Visual Studio Team Services.

  • Debug an Azure application

Collect diagnostic information by using Azure App Insights; choose log types, for example, event logs, performance counters, and crash dumps; stream logs directly to Visual Studio from a deployed site; debug an Azure application by using Visual Studio and remote debugging; interact directly with remote Azure websites using Server Explorer.

  1. Design and Implement Security
  • Configure authentication

Authenticate users; enforce authentication settings; implement ASP.NET Core Identity; enable Facebook, Google and other external providers; implement account confirmation, password recovery, and multi-factor authentication; perform authentication using Azure Active Directory, Azure Active Directory B2C, Azure Active Directory B2B, and Microsoft Identity; manage user session by using cookies; acquire access tokens using the Microsoft Authentication Library (MSAL).

  • Configure and apply authorization

Create roles; authorize roles programmatically; configure and work with custom UserStores using middleware; configure controllers and actions to participate in authorization.

  • Design and implement claims-based authentication

Perform authentication and authorization using tokens including OpenID, OAuth, JWT, SAML, bearer tokens, etc.

  • Manage data integrity

Apply encryption to application data; apply encryption to the configuration sections of an application; sign application data to prevent tampering; secure data using Azure Key Vault; implement encryption for data protection using the data protection APIs in transit and at rest

  • Implement a secure site

Secure communication by applying SSL certificates; require SSL for all requests; enable SSL hosting in the development environment; implement SSL using Azure Load Balancers; salt and hash passwords for storage; use HTML encoding to prevent cross-site scripting attacks (ANTI-XSS Library); implement deferred validation and handle unvalidated requests, for example, form, querystring, and URL; prevent SQL injection attacks by parameterizing queries; prevent cross-site request forgeries (XSRF); use Azure Security Center to monitor Azure resources; implement Cross Origin Resource Sharing (CORS); implement protection against open redirect attacks.

    Participating in BETA Exams

    A critical part of the exam development process is the beta exam. By taking the exam in its beta format, candidates provide us with useful information to evaluate the technical accuracy, relevance, and psychometric characteristics of the questions before we score examinees.

    Get 80% off the CSC beta exam. If you take the beta exam, Knowledge Pillars will send a 25% discount voucher to the same email that you use to register for exams AFTER the beta exam has been scored. You can apply that voucher to your next Knowledge Pillars exam registration. 

    Note Participation in the beta is on a first come, first served basis. Due to popular demand, we recommend that you register as soon as the beta registration period begins. 

    Candidates located in China, India, Pakistan, or Turkey are not eligible to participate in beta exams for security reasons.

    Preparing for a beta exam

    You will have access to the Exam Details page that lists the skills that will be assessed on the exam. Knowledge Pillars does not currently offer training materials for its exams.

    People interested in beta exams usually have access to other resources, are experienced with the technology, or work with the beta product. We recommend that you consult peers, community resources, and early-adopter articles for support if you need additional preparation materials.

    Beta exam scoring and results

    When you complete a beta exam, you do not receive a score immediately because the scoring model for the exam is not yet finalized.

    You usually receive your exam score within 2-3 weeks after the exam becomes available worldwide—this can be up to 16 weeks after you take the exam, depending on when in the beta period you took the exam. This time frame reflects the comprehensive process used to evaluate the beta exam results, including statistically analyzing the data to evaluate the performance of each question and reading and evaluating all comments provided during the beta exam. The rescore process starts on the day that exams go live, and final scores are released approximately 10 days later.

    Note Participation in beta exams is voluntary, and Knowledge Pillars makes no promises or guarantees regarding the beta exam process, availability of your scores, or the timing of your results. Generally online proctored exam results are presented within 72 hours.

    Passing the beta exam

    Passing a beta exam in your certification exam counts toward your transcript. You do not need to retake the exam in its final version and you will receive a digital badge as confirmation of your passing score. Make sure that you take another exam within a year so you can take advantage of the 25% discount you earned for taking the beta exam through our beta exam discount program.

    If you do not pass the beta exam, you cannot retake the beta exam. If you are interested in earning a certification that requires successful completion of that exam, you must wait to retake the exam at regular cost when it’s live, or you can apply the 25% discount that you received for taking the beta exam through our beta exam discount program.

    Technical Requirements

    The minimum system requirements are:

    • Operating system: Windows 7/8/10 OS, MacOS X 10.0x or newer, Linux OS
    • Minimum RAM: 1GB or more depending on the Operating System
    • Minimum processor: 1.0 Ghz or more depending on the operating system and the architecture
    • A color monitor with minimum display resolution: 1366px by 768px
    • Internet access
    • The latest version of the Chrome browser
    • Automatic updates, notifications, other popup windows, and anything that can disrupt the examination process should be disabled
    .Net Coding Specialist Badge

    .Net Coding Specialist

    Number of questions: 35
    Time limit 45 minutes
    Passing score 75%
    Format Linear and In-App
    Exam valid for 2 years

    I am a business leader and I have a company in finance. We need very often to hire developers with Python or Javascript skills as development is an active part of our business; we need to improve continuously the stability and quality of our system, so we need people with experience. We receive between 500 and 1500 applications when we create a job post. One of the very first things we do is shortlist applications, by looking for specific words or certifications that can prove candidates have what we need.

    Unfortunately, 2 out 3 candidates, even if certified, don’t seem to own quality skills and their knowledge seem to be more theoretical. KP certifications solve that issue, because now we know, in advance, that a candidate possessing those credentials must also own the knowledge in a practical way. KP significantly contribute to addressing and providing a solution to the skills gap in the modern world.

    Jonathan Frazer

    Give us your feedback!

    If you’ve taken one of our exams, we want to hear from you!