Recent Posts
-
Mastering Multi Tenant setup with rails part 1
railsmulti-tenantmulti-dbMulti-tenancy is a software design where a single instance of a software application serves multiple customers or tenants (individual users or organizations). In a multi-tenant architecture, each tenant’s data and configuration are logically isolated from one another, providing a sense of individuality and privacy while sharing the same underlying infrastructure, codebase, and application instance. read more » -
An in-depth look at Database Indexing
databaseindexingpostgresmysqlrelational databaseclustered indexprimary key indexexplainanalyzepostgres indexingIn this article, we will explore Database Indexing. We will begin by installing the Docker & running a Postgres container on it. Subsequently, to execute queries and comprehend how the database uses various indexing strategies, we will insert millions of rows into a Postgres table. read more » -
Puma: From Daemonization to Process Control with Systemctl and Monit
pumadaemonsystemctlmonitrailsPuma is a popular Ruby web server that is known for its speed and scalability. It has undergone significant changes in recent versions(starting 5.0.0). One of the most notable alterations is the removal of the daemonization feature. But what does it mean? read more » -
Demystifying Rails 7 System Tests: Configuring CI Pipeline
Rails 7System TestsIntegration TestsCI-CDMinitestCapybaraSeleniumSelenium-webdriverwebdriverwebdrivers gemchromedriverarm64amd64linuxdockergitlab-runnerIn Rails 5.1 and later versions, system tests were introduced as a new type of test to simulate a user interacting with a web application. These tests use a headless browser, typically powered by Capybara and a WebDriver, to mimic a user’s actions like clicking buttons, filling forms, and navigating through the application. read more » -
Building a Frontend Scoring Engine: Automating Frontend Evaluation
frontend developmentevaluationautomationtestingcodingThe frontend scoring engine is a powerful tool designed to assess the frontend skills of candidates based on code quality, responsiveness, and functionality. It aims to streamline the evaluation process for frontend development by automating the assessment of code quality, best practices, and functionality. read more » -
Revamping eLitmus.com | Stand-Alone Front-end Module
elitmusrevampupgradedistributed systemThe current elitmus.com is a web application built with Ruby on Rails Framework, and the views are sent directly from the backend server whenever requested. This was quite good before, but in present scenario of internet and web technologies, these seem to lack some very basic requirements. And Hence, an upgradation is required. read more » -
My Experience as a Summer Intern at eLitmus: Building a Telegram Bot
RailsTelegram botAs a summer intern at eLitmus, I had the opportunity to work on an exciting project that involved building a Telegram Bot. In today’s digital era, effective communication channels play a crucial role in connecting businesses with their stakeholders. eLitmus, a talent-tech platform, identified the need for a two-way communication channel between the platform and candidates. To achieve this, Telegram bots were chosen as the ideal starting point. This blog post will delve into the Telegram Bot Integration project. read more » -
Resume Parsing: Insights and Steps to Create Your Own Parser
Resume-parserPythonFlaskNLPLLMResume parsing is the automated process of extracting relevant information from resumes or CVs. It analyzes the unstructured text of a resume and extracts specific details like contact information, work experience, education, skills, and achievements. The extracted data is then converted into a structured format, allowing for easy analysis and integration into recruitment systems. read more » -
Debugging & Fixing mysql deadlock issue
MysqldeadlockIndex locksNext Key LockrubyRuby on RailsaasmRecently, during one of our tests, we encountered a deadlock issue that was reported by Sentry. The deadlock occurred while attempting to insert scores into a table after completing a candidate’s test. We were initially unsure about the cause of this deadlock. Upon investigation, we discovered that it was due to the interplay of various locks in our MySQL database. In this blog post, we will deep dive into the nature of these locks, understand their impact on transactions, and present the solutions we implemented to mitigate deadlock occurrences. read more » -
Website Monitor Using Google App Script
google-app-scriptuptime-monitorwebsite-statusupptimeRecently, I was looking for a solution to notify me when a website is down and when it is back up. I found a few solutions, but they all had a learning curve. So I thought of an alternative solution using Google App Script, which I had recently learned about. read more »