CodeSignal’s product and engineering teams were busy as ever this month, tackling a wide variety of product improvements, bug fixes, and feature updates. This month we’re highlighting two exciting updates:
- The virtual whiteboard in CodeSignal Interview is now powered by Miro
- Improved user experience for creating SQL tasks
We’re also happy to announce that, starting this month, we’ll be including notable new tasks our content team has launched in our monthly product updates. You’ll find those under the Content heading below.
Upgraded virtual whiteboard
CodeSignal’s upgraded virtual whiteboard is now powered by Miro, a collaborative whiteboard tool that has been rated by G2 as one of the top 100 Best Software Products of 2021. Compared to our previous whiteboard too, the upgraded virtual whiteboard has improved user experience and more powerful functionality.
Learn more about using the upgraded virtual whiteboard in this Knowledge Base article:
Improved UI for creating SQL tasks
This month we also launched a batch of improvements to our user interface for creating and saving SQL tasks on CodeSignal—a few of which enhance candidate experience, as well.
The following changes went live in April:
- Updated order of the sections in the TESTS tab to better reflect a realistic workflow.
- Renamed "cleanup scripts" to "setup/teardown scripts."
- Updated tab names to be shorter and show the file type extension, which can help clarify instructions for candidates.
- Added a feature to auto-detect table names in the setup script and first test case.
- Made it possible to save a SQL task even if it has a missing or invalid author solution. Note: While this is useful for saving a task in-progress, we encourage you to use this functionality with caution! CodeSignal will display an error indicating if the author solution is missing or invalid when a user saves the task.
- Made the single-function validation logic for the author solution consistent with SQL.
Learn more about creating SQL tasks in this Knowledge Base article:
Other Updates
Here's a comprehensive list of everything else we pushed live in April, grouped by product area:
Content
- Created several tasks for interview live stories. These are 3 iterative tasks with the same story and increasing difficulty that can be used during a live interview. There are several variations for each slot to make it more difficult to cheat. These new tasks are:
- Algorithmic interview:
- installLibraries1_1, installLibraries1_2
- installLibraries2_1, installLibraries2_2
- installLibraries3_1, installLibraries3_2
- Database interview:
- serverLibraries1_1, serverLibraries1_2
- serverLibraries2_1, serverLibraries2_2
- serverLibraries3_1, serverLibraries3_2
- Frontend (rendering only):
- IDELibrariesInstallerStatic1_1
- IDELibrariesInstallerStatic2_1
- IDELibrariesInstallerStatic3_1
- Devops interview:
- retrieveLibraries1_1
- retrieveLibraries2_1
- retrieveLibraries3_1
- Algorithmic interview:
- Created multithreading tasks. CodeSignal now has a variety of basic multithreading tasks for most popular languages: Java, Kotlin, C#, Go, and C++. Here is the list of new tasks for Java (tasks names for other languages follow this structure):
- ridesAggregatorJava
- cheapestAirplaneTicketJava
- documentProcessorJava
- driverAcceptanceJava
- simpleBankingStorageJava
- simpleBakingSystemJava
- bankTransfersJava
Test
- Updated wording of the "Leave Without Submitting?" modal so that candidates can better understand what happens if they leave without submitting.
- Fixed an issue where free-text drafts were not saved if a prior answer had been submitted already.
- Updated message for the "Finish the Test" confirmation modal when all tasks have been submitted.
- Fixed bug where it was possible for the "5 minute warning" growl to appear in the middle of a test before the 5-minute mark. This could happen if a candidate was taking the practice test before the real test and did not complete the practice test before navigating away.
- Fixed display of stats when there are no Test results yet.
- Fixed incorrect calculation for cases when some months don't have any Test results.
- "Go to Test" button in expiration emails now jumps directly to the Expired tab for each test.
- Fixed a subtle sorting bug where order might not be deterministic for "tied" results (e.g., results with equal scores), which could make it hard to see results in certain conditions.
- It's now possible to use {{variables}} in the subject line of invite or reminder emails, just like for the email body.
- Invalid variables in emails are now validated on save, and emails will be sent even if there are invalid variables.
Certify
- Updated wording of the "Leave Without Submitting?" modal so that candidates can better understand what happens if they leave without submitting.
- Fixed an issue where free-text drafts were not saved if a prior answer had been submitted already.
- Updated message for the "Finish the Test" confirmation modal when all tasks have been submitted.
- Fixed bug where it was possible for the "5 minute warning" growl to appear in the middle of a test before the 5-minute mark. This could happen if a candidate was taking the practice test before the real test and did not complete the practice test before navigating away.
- Fixed a subtle sorting bug where order might not be deterministic for "tied" results (e.g., results with equal scores), which could make it hard to see results in certain conditions.
- Fixed a bug where candidates might have to go through proctoring setup twice in case they took the practice test right before the main test.
- Fixed a bug to prevent any badge notifications from showing up on the Test Center while a candidate is taking a practice test.
Interview
- Language will now be preserved between tasks, regardless of the default language for interviewer/candidate.
- The other participant(s) are now shown by default when fullscreening video. When another new person joins, they are shown fullscreen.
- Switching to another task from the quickstart menu now closes the Miro whiteboard.
- Shadow interviewers can no longer see actions they are not allowed to perform (like changing the task or finishing the interview).
- Fixed a bug where company admins could only see the feedback tab for their own team; they can now always see the feedback tab.
IDE
- There are now two layout options for the IDE: horizontal and vertical.
- Updated UI to make it more obvious where console logs are being shown when something was logged but there is also a runtime error (especially relevant for Interview).
- Frontend preview now renders correctly even at the beginning of a replay or when no code changes are made.
- The difficulty label (Easy, Medium, Hard) will now never be shown in any mode to anyone, including in task review.
- Fixed a bug with "Run single test" button for SQL tasks.
- Fixed bug where the wrong failing test number would be shown when an error was thrown by a DevOps task.
Tasks
- Filesystem:
- Go is now supported as a testing tool with automated scoring.
- Fixed the default "entry point" code (for "main.sh") for filesystem tasks using Python + Django.
- SQL:
- Test cases can now be reordered via drag and drop.
- Test cases in SQL tasks now update their displayed "position" number immediately after a drag and drop operation.
- It is now possible to configure the number of sample versus hidden tests for SQL tasks.
- Other:
- Videos in task descriptions now scale more responsively as the description panel width is changed.
- It is now possible to auto-generate output via author solution when creating a test case for a single-function task.
Global
- Updated scrollbars across the whole site to make them visible on OSX devices without a mouse (i.e., any Macbook).
API
- GraphQL API: Email reminders can now be configured and queried via the API.
ATS
- CodeSignal will now send "access token" links to Greenhouse for test results, which can be viewed even while not logged in.
- It is now possible to link an interview template ID when creating an interview through iCIMS.
Admin
- Customer Admin
- Bulk user invite tool can now be used to update roles for existing contacts.
- Auditors and admins will now be able to view all test results on a Coding Report, regardless of visibility.
- Content Admin
- Fixed bug preventing the import of filesystem-frontend tasks from GitHub.
- Fixed bug in frontend task validation on import.
Test Center
- Fixed bug where Coding Report would not show up in Test Center unless the practice test was completed.
Infrastructure
- Coderunner releases v4.14.0 & v4.14.2
- Fixed incorrect line numbers for MySQL errors.
- Added Go testing tool support.
- Newlines are now tolerated in string and character inputs for Go and Objective-C.
- Images are now based on Ubuntu 20.04 (instead of 16), except for Kotlin.
- Miscellaneous version bumps:
- Clojure: 1.10.1 -> 1.10.2
- PHP: 8.0.0 -> 8.0.3
- Go: 1.13.4 -> 1.16.2
- C, C++, Fortran: GCC 8.4.0 -> 10.2.0
- Java: 15.0.1 -> 15.0.2
- C#, VB: Mono 6.12.0.90 -> 6.12.0.122
- Objective-C: Clang 3.8.0 -> 10.0.0
- Perl: 5.22.1 -> 5.30.0
- Swift: 5.3 -> 5.3.3
- R: 4.0.3 -> 4.0.4
- OCaml: 4.02.3 -> 4.08.1
- Rust: 1.47.0 -> 1.50.0
- Elixir: 1.9.1 -> 1.10.4
- Nim: 1.0.2 -> 1.4.4
- Pascal: 3.0.0 -> 3.0.4
- Groovy: 3.0.6 -> 3.0.7
- TypeScript: 4.1.3 -> 4.2.3
- Tcl: 8.6.5 -> 8.6.10
- Octave: 4.0.0 -> 5.2.0
- MySQL: 8.0.22 -> 8.0.23
- PostgreSQL: 13.0 -> 13.2
- Microsoft SQL: 15.0.4073.23 -> 15.0.4102.2
- MongoDB: 4.4.1 -> 4.4.4
- Powershell: 7.0.3 -> 7.1.3
- Bash: 4.3.48 -> 5.0.17