MedWatchers OA - 2025 Data Engineer Role
MedWatchers OA - 2025 Data Engineer Role
Recently, I participated in an online assessment for a Data Engineer role at MedWatchers, and I must say, it was a bit more challenging than I initially anticipated. While I expected to tackle questions mainly focused on Python and SQL, the assessment included a diverse range of topics. Here’s a breakdown of my experience.
Assessment Structure
The assessment consisted of five questions to be completed within a total time limit of 30 minutes on the TestDome platform. Here’s how the questions were distributed:
- 1 Question for Python - 14 minutes
- 1 Question for Bash - 5 minutes
- 1 Question for SQL - 2 minutes (a bit tight, as it takes time to read)
- 1 Question for Statistics - 5 minutes
- 1 Question for Abstract Reasoning - 4 minutes
Overall Difficulty: Moderate
Question 1: Bash Scripting
The first question tested knowledge of Bash scripting, presenting a series of commands and asking about their implications. Here’s the provided script:
bash #!/bin/bash echo “File contents” > .newfile mkdir .newdir echo “More contents” > .newdir/.anotherfile
Based on this script, the following statements were evaluated:
ls .newdir/
will display.anotherfile
.cat .newdir/.anotherfile
will display “More contents”.rmdir .newdir/
will remove both.newdir
and.newdir/.anotherfile
.ls -aR
will display both.newfile
and.newdir/.anotherfile
.rm -rf .newdir
will remove both.newdir
and.newdir/.anotherfile
.
Correct Answers:
cat .newdir/.anotherfile
will display “More contents”.ls -aR
will display both.newfile
and.newdir/.anotherfile
.rm -rf .newdir
will remove both.newdir
and.newdir/.anotherfile
.
Question 2: Python Problem
The second question involved writing a function to determine how many times people can cross a hypothetical bridge. I had to implement the following function:
python def crossBridge(nums: list[int]) -> int: return (min(nums) - 1) // 2
This concise solution efficiently computes the maximum crossings based on the minimum value in the list, showcasing the importance of understanding problem constraints.
Question 3: SQL Query Analysis
The third question required analyzing an SQL query based on a guestData
table containing several records. The task was to identify which SQL queries could return only one record. The table had columns such as guestid
, firstName
, lastName
, age
, and contactNumber
.
Given the following queries, we needed to select those that would yield exactly one record:
SELECT * FROM guestData WHERE lastName LIKE "m%" OR lastName LIKE "n%"
SELECT * FROM guestData WHERE age BETWEEN 5 AND 16;
SELECT * FROM guestData WHERE age = 16 AND age = 34;
SELECT * FROM guestData WHERE firstName LIKE "a_";
SELECT * FROM guestData WHERE contactNumber LIKE "_75%" OR firstName LIKE "r%";
Correct Answers:
SELECT * FROM guestData WHERE age BETWEEN 5 AND 16;
SELECT * FROM guestData WHERE age = 16 AND age = 34;
Question 4: Visual Reasoning
The fourth question involved visual reasoning, but I unfortunately cannot recall the specific problem. It typically assesses one’s ability to identify patterns or relationships in visual data.
Question 5: Statistical Analysis
The final question required statistical analysis of three manufacturing methods to determine which method produced the greatest number of parts per hour. The data was presented in a table format, and we were tasked with drawing conclusions based on a 5% significance level.
The data collected was as follows: