Software Engineering Online Test

TestDome skill assessments are used by more than 11,000 companies and 1,030,000 test takers.

For Jobseekers

Practice your skills and earn a certificate of achievement when you score in the top 25%.

Take a Practice Test

For Companies

Test candidates with real-world problems and interview the best ones.

Sign Up to Offer this Test

About the test

The Software Engineering online test assesses knowledge of software development and engineering concepts, principles, and best practices through a series of multiple-choice and fill-in-the-blank questions.

The assessment includes work-sample tasks such as:

  • Creating RESTful APIs.
  • Using OOP principles and OOP design patterns to write reusable code.
  • Selecting an appropriate solution and software architecture to satisfy specific business needs.

A good software engineer needs a solid understanding of how software systems work together, how to optimize them, and how to design systems to avoid potential issues.

Sample public questions

Easy
3 min
mca
Public
AI-resistant
REST API & HTTP
REST

A large library uses a REST API which integrates with its web page and mobile app.

The following graph contains the frequency of various HTTP status codes for the REST API:

Graph showing HTTP status codes

What can be concluded from this?

Easy
3 min
fill
Public
Solution & Software Architecture
Layered Architecture
Software Architecture

You are working on multilayer architecture for a new website for the largest news portal in your area. Your colleague has already prepared layers.

Your task is to choose the best option for each layer from the available technologies and programming languages your team knows.

Layer Available Technology or
Programming Language
Presentation Layer ___
Business Logic Layer ___
Data Access Layer ___
Database Layer ___
Easy
3 min
mmcq
Public
Data Structures & Algorithms
Algorithmic Thinking
Complexity

For the following pseudocode functions, choose the big O notation that accurately describes its worst-case complexity.

Easy
5 min
mca
Public
OOP & Design Patterns
Inheritance

In a language that supports the OOP paradigm, we have the following code that serializes the content of a shopping cart to JSON format:

class ShoppingCart
  private content : Dictionary<Int, String> 

  public function serialize() : String
    return new JsonSerializer().serialize(content.clone())
  end function
end class

class JsonSerializer  
  public function serialize(value : Dictionary<Int, String>) : String
    // Code that serializes dictionary to JSON format and returns it as string
  end function
end class

A client wants to allow loosely coupled plugins to be able to serialize the shopping cart content to their own formats (e.g., XML). Select lines of code that, together, would extend the code above to allow this.

For jobseekers: get certified

Earn a free certificate by achieving top 25% on the Software Engineering test with public questions.

Take a Certification Test

Sample silver certificate

Sunshine Caprio

Java and SQL
TestDome
Certificate
TestDome logo icon

For companies: premium questions

Buy TestDome to access premium questions that can't be practiced.
Get money back if you find any premium question answered online.

Sign Up to Offer this Test

Ready to Interview?

Use these and other questions from our library with our
Code Interview Platform.

Sample image of the interviews app.

31 more premium Software Engineering questions

Panel System, Sort Comprehension, Do Recursive, Collaborative Software, Spreadsheet App, Blame, Service Discovery, Web Protocol, HTTP Post, Cookies, Tree Traversal, Sorted Array Search, Engine, UML Diagrams, Advertising Platform, Welcome Screen, Cloud Solution, Candidates REST API, Mock Configuration, Fair Contest Winner, Social Connections, Internet Provider, Find Element, List Traversal, Event Planning, Return Value, Max Heap, Car Persistence, Product Versioning, Order API, REST Communications.

Skills and topics tested

  • OOP & Design Patterns
  • Behavioral Patterns
  • Creational Patterns
  • Design Patterns
  • Data Structures & Algorithms
  • Algorithmic Thinking
  • Complexity
  • Recursion
  • Solution & Software Architecture
  • Software Architecture
  • Software Architecture Patterns
  • Cloud Computing
  • Solution Architecture
  • Collaborative Environment
  • Microservices
  • REST API & HTTP
  • Network Security
  • Protocol
  • HTTP
  • Tree Traversal
  • Binary Search
  • Inheritance
  • Method Overriding
  • UML
  • REST
  • Inversion of Control
  • Dynamic Programming
  • Graphs
  • Greedy Algorithm
  • Iteration
  • Breadth-first Search
  • Searching
  • Linked List
  • Backtracking
  • Heap
  • Priority Scheduling
  • OOP

For job roles

  • Back-End Developer
  • Full-Stack Developer
  • Mobile Developer
  • Software Developer
  • Web Developer
  • Web Front-End Developer

Sample candidate report

Need it fast? AI-crafted tests for your job role

TestDome generates custom tests tailored to the specific skills you need for your job role.
Sign up now to try it out and see how AI can streamline your hiring process!

Use AI Test Generator

What others say

Decorative quote

Simple, straight-forward technical testing

TestDome is simple, provides a reasonable (though not extensive) battery of tests to choose from, and doesn't take the candidate an inordinate amount of time. It also simulates working pressure with the time limits.

Jan Opperman, Grindrod Bank

Product reviews

G2 - Crowd Badge
G2 - High Performer (2022)
Capterra - 4.5 Stars
Capterra - Shortlist (2023)

Used by

Solve all your skill testing needs

150+ Pre-made tests

From web development and database administration to project management and customer support. See all pre-made tests.

130+ skills

From JavaScript and SQL to English and customer support. See all questions to filter by skill.

Multi-skills Test

Mix questions for different skills or even custom questions in one test. See an example.

How TestDome works

1

Choose a pre-made test
or create a custom test

2

Invite candidates via
email, URL, or your ATS

3

Candidates take
a test remotely

4

Sort candidates and
get individual reports