Engineering

One Step Ahead: Software Testing Trends to Watch In 2021

One Step Ahead: Software Testing Trends to Watch In 2021

Modern testing solutions are evolving and revolutionizing. QA is not just about finding bugs and errors anymore; it is a complex technical philosophy that also includes evaluation of a product idea, behavioural predictions, analysis of opportunities and threats, etc So can we use only traditional and well-known testing methods to achieve progressive results? Of course,…

Future of Visual Regression Testing at Shaadi.com

Future of Visual Regression Testing at Shaadi.com

The What: Automated visual testing is a technique to verify that your application appears to the user as you intended. Visual testing can be used whenever there’s a need to verify the display of data on a web or mobile application. The Why: Traditional testing paradigms allow the creation of separate tests for their functional and…

Material Design: What? Why?

Material Design: What? Why?

Design Systems are ways of communication,  not only between the software and human but also between designers and developers and the other stakeholders. As in software development, we tend to hold to at least one Architectural Pattern so that we communicate better through our code and everyone in the team knows where to write what kind…

AutoIT for Desktop Automation

AutoIT for Desktop Automation

How to upload Files in Selenium Webdriver using AutoIT What is AutoITAutoIT is a freeware scripting language designed for automating windows GUI and general scripting. It uses a combination of mouse movement, keystrokes and window control manipulation to automate a task that is not possible by a selenium web driver. In layman’s terms, AutoIT is just another automation…

Introduction To Machine Learning in iOS

Introduction To Machine Learning in iOS

Machine learning is a subset of artificial intelligence (AI). It is an application of artificial intelligence (AI) that provides systems with the ability to automatically learn and improve from experience without being explicitly programmed. Machine learning is a study of computer algorithms that improve automatically through experience. Machine Learning EcoSystem in iOS:- We can use four different input…

Architectural Enhancement:- VIPER over MVVM

Architectural Enhancement:- VIPER over MVVM

A well-designed architecture is important to keep a project maintainable in the long term. At Shaadi, we have always strived to achieve it and in this process have transitioned from MVC to using MVVM pattern. While it’s debatable that MVVM does scale averagely in the long run, there’s a pattern that knits out this dilemma….

How Shaadi.com optimized compute costs using Amazon EBS gp3 volumes

How Shaadi.com optimized compute costs using Amazon EBS gp3 volumes

Shaadi.com was founded in 1996 with one simple objective – to provide a superior matchmaking experience to Indian people around the world. Shaadi.com has over 3 million active profiles globally. As of today, Shaadi has helped 3.5 crores (35 million) people find their matches. Shaadi.com uses AWS to deploy its key products, including the matrimonial portal,…

ES2020 Operators

ES2020 Operators

Optional Chaining and Nullish Coalescing are the new JavaScript operators added in ES2020. These operators have been a part of other programming languages like Swift and Kotlin and have now been added to JavaScript. These operators make it easier to write readable and safer code. Optional Chaining Optional Chaining allows access to nested properties of an object without…

What we’ve learned from building NextJS POC

What we’ve learned from building NextJS POC

We’ve worked on the NextJS POC, to evaluate if we can use this tool for our future development. The assumption was NextJS can help us build a scalable front end in terms of performance. And also figure out what kind of infra, workflow changes we will have to do to accommodate this.Since NextJS fundamentally works…

How to think about packages in a monorepo

How to think about packages in a monorepo

A good software is one which is easy to change. Software is never written, it is always rewritten. It changes and evolves every day. The life expectancy of any code you write is forever. It stays in your system till it is deleted. This code goes through a lot of changes during its lifetime and so…