C++ Coding Specialist (CPPCS) Certification
C++ is a high-level general-purpose programming language created as an extension of the C programming language, or “C with Classes”.
C++ is a popular programming language, is used to create computer programs, and is one of the most used language in game development.
The C++ Coding Specialist Certification is a globally-recognized industry certification on C++ programming, which grants coding specialists, software developers or engineers, game developers and IT professionals the ability to assess their knowledge and get credentials for their programming skills.
The unique peculiarity of the C++ Coding Specialist Certification is the assessment modality, which consists of a real live coding environment, offers candidates the ability to write proper code to perform tasks-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.
Number of questions: 35
Time limit: 50 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 50 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 results are sent to candidates within 72 hours.
Exam Objective Domains
Candidates for this exam are developers with at least one year of experience programming essential business logic for a variety of application types, hardware, and software platforms using C++.
Candidates should also have a thorough understanding of the following:
- Unit 1: Fundamental types and variables
- Unit 2: Operators and expressions
- Unit 3: Flow control and loops
- Unit 4: Arrays
- Unit 5: Pointers and references
- Unit 6: Functions
- Unit 7: User-defined types and objects
- Unit 8: Inheritance
- Unit 9: Templates
- Unit 10: Basic Standard Template Library (STL) containers
Unit 1: Fundamental types and variables
- Fundamental types: booleans, characters, integers and floating-points
- Fundamental types sign (signed, unsigned) and sizes (short, long)
- Fundamental types literals and auto keyword
- Variable and constant declaration, initialization and scope
- Single-line and multi-line comments
Unit 2: Operators and expressions
- Operators: assignment, arithmetic, relational, logical, bitwise
- Writing to cout and reading from cin
- Implicit conversions and explicit conversions with static_cast<>
- Exception handling
Unit 3: Flow control and loops
- Conditional execution with if, else if and else statements
- Conditional execution with switch statement
- Loops with while statement
- Loops with do-while statement
- Loops with for statement
- Statements break and continue
Unit 4: Arrays
- Array declaration and initialization
- Working with two types of strings
- Access to elements
- Multidimensional arrays
Unit 5: Pointers and references
- Pointer declaration, initialization and dereferencing
- Pointers into arrays
- Pointers and constancy
- Using free store
- Reference declaration and initialization
Unit 6: Functions
- Function declaration and definition
- Passing arguments to a function
- Returning values from a function
- Function overloading
Unit 7: User-defined types and objects
- Class members (data, functions, constructors and destructors)
- Member accessibility (public, private)
- Overloading methods and constructors
- Static class members
- Enumeration definition and usage
Unit 8: Inheritance
- Access to inherited members and access control (private, protected, public)
- Virtual function members
- Final classes and function members
- Abstract classes and function members
Unit 9: Templates
- Function template definition and parameters
- Function template instantiation
- Class template definition and parameters
- Class template instantiation
Unit 10: Basic Standard Template Library (STL) containers
- Basic linear containers (vector, deque, list)
- Basic container adaptors (stack, queue)
- Dictionaries implemented with binary trees
- Dictionaries implemented with hash tables
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 CSCS 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.
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
I am a C# developer, but I have never taken a certification because I sense that exams cannot assess my skills in a proper way. I am a creative person, I am not comfortable with a multiple or single choice format exam, where my theoretical knowledge is tested but not my actual ability to code. I am a successful professional and I feel I would like to show what I can do, rather than flagging in a question-based exam. Knowledge Pillars exams are different because I attempt it doing what I do best which is coding – I can show my practical knowledge and get certified, owning credentials that value my real competence on a global scale.
Give us your feedback!
If you’ve taken one of our exams, we want to hear from you!