Software Engineering Online Test
For Jobseekers
Practice your skills and earn a certificate of achievement when you score in the top 25%.
Take a Practice TestFor Companies
Test candidates with real-world problems and interview the best ones.
Sign Up to Offer this TestAbout 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
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:
What can be concluded from this?
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 | ___ |
For the following pseudocode functions, choose the big O notation that accurately describes its worst-case complexity.
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 TestSample silver certificate
Sunshine Caprio
Java and SQL TestDomeCertificate
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.
Ready to Interview?
Use these and other questions from our library with our
Code Interview Platform.
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!
What others say
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
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
Choose a pre-made test
or create a custom test
Invite candidates via
email, URL, or your ATS
Candidates take
a test remotely
Sort candidates and
get individual reports