Working as an SDET at Pratilipi

Harsh
4 min readNov 27, 2021

Let me start off by explaining how awesome of an organisation is Pratilipi, From work culture to personal and professional growth you get an entire package.I have grown by leaps and bounds and a technical folk and grown my soft and interpersonal skills.

I was given complete autonomy to build a test automation suite for Pratilipi’s core product and i was successfully able to do so. I created several frameworks as well as tools around which our automation could be built. I worked along several verticals in the organisation including to but not limited to the recommendation team, platform team and quality assurance team. Below i am listing some of my work.

Load testing and correction tool for recommendation team

It is a well established fact the recommendation plays a crucial role in any product application. To make the sure our recommendation systems were healthy, I was tasked to create a tool that could test our recommendations for all the users in a specific bucket.

I designed this tool to make asynchronous calls and hit our prod server quickly to validate all sorts of recommendations. We gave it a margin of 5% error before alerts as some users were not eligible for recommendations. If the tool detected anomaly in the recommendations it sent out and alert on slack and informed the team. It is also used as performance/stress testing tool as it make over a 150k API calls in 5 minutes. if it took more time, it meant that the infra health was not at a 100% and it required fixing.

I went far enough to apply my knowledge of multiprocessing on it and ran the asynchronous calls in threads, dividing the time by the number of threads. We also hosted it on our cloud platform and fetched users directly from s3 bucket.

Frontend Test automation tool for sanity testing aka Munni

I created a sanity tool for QA team in order to automate mundane testing tasks. Munni did the sanity on the entire app. It has eased up testing for QA folks as it allows them to focus on testing the new features and not worry about integration testing. They got to know early in the testing process if the new features were affecting any new existing features.

We also added up suites of automation to the framework to understand different user behaviours such as new user and debug the common issues such as customer retention by observing daily sanity routines for that particular segment.

+----+------------------------------+----------+-----------------+
| | Remarks | Result | Error Type |
|----+------------------------------+----------+-----------------|
| 0 | Could register new user | pass | No issues found |
| 1 | login successful | pass | No issues found |
| 2 | Content loading fine | pass | No issues found |
| 3 | UI working fine | pass | No issues found |
| 4 | skipped to home screen | pass | No issues found |
| 5 | Coins deposited | pass | No issues found |
| 6 | streak view found | pass | No issues found |
| 7 | For you section not found | pass | No issues found |
| 8 | Blockbuster view found | pass | No issues found |
| 9 | Best seller section found | pass | No issues found |
+----+------------------------------+----------+-----------------+

The framework was built to sustain as many flows as we want since each function was independent. This way, any UI change or functionality change did not cost us the job of re-writing the tool

Backend test automation tool for alerts aka sheila

To improve the reaction speed to our downtime, i set up a tool to send alerts on slack. It calls all out platform APIs and (around 50 APIs) and tests them for ideal behaviour. It sends weekly performance alerts Saturday and Daily reports at 12am. Any discrepancy in any API alerts us and the platform teams gets straight to work.

Audio Validation Tool

This tool was created for Pratilipi FM team. It picks up the newly uploaded audio files from the database and validates the audio. it filters out audio files of they are corrupt, incomplete or are not according to standards which can’t be disclosed.

Overall , it was a great experience for me to build the tools as i got to learn things outside my comfort zone. I was able to surpass my limits and expand my knowledge in development, product and testing fields.

--

--