At CodeGround, our recruitment philosophy is simple. Make the recruitment test as closely aligned with the actual job as possible.
The best way to filter candidates for a software development role is by asking candidates to write code.
For example, consider the following coding question that serves as an assessment of basic coding ability:
Write a program to return true if an input string is a palindrome and false otherwise.
If a candidate cannot write code to meet the basic coding requirements of the question above, that candidate is not fit for a role in software development.
For more advanced assessment of coding ability, we encourage recruiters to test the candidate’s understanding of Data Structures.
A cache of capacity N, N > 0, supports the following operations:
PUT (K, V), where K and V are integers – The value V is added corresponding to the key K. If Key K is already present in the cache, the old value is replaced by the new value. If the capacity of the cache, N, is exceeded, the Least Recently Used element (from a time perspective, its usage was earliest) is discarded from the cache.
GET(K) – Returns V if key K is present in the cache. Else, it returns null.
Both, PUT and GET operations count as usage. Therefore, whenever an element is added using PUT or fetched using GET, that element immediately becomes the most recently used element (used latest from a time perspective).
It tests the candidate’s ability to instinctively figure out that the best data structure to track usage is by maintaining a doubly-linked list of key values, ordered such that the Most Recently Used element on one end and the Least Recently Used element at the other.
CodeGround enables you to hire the best developers for your openings by optimizing the recruitment funnel.
See the Getting Started Guide for more details on creating your own online tests.