MasterCard
Porch Interview Questions and Answers
Q1. If I give you a coding problem to solve in the language you don’t know, can you solve it, when you’re allowed to refer Google search?
Yes, I can solve a coding problem in a language I don't know with Google search.
Utilize Google search to understand syntax and concepts in the unfamiliar language
Break down the problem into smaller parts and search for solutions to each part
Refer to online resources, forums, and documentation for guidance
Practice writing and testing code snippets in the new language before attempting the full solution
Q2. What are software development design patterns? Can you explain singleton design pattern and code an example to show that?
Software development design patterns are reusable solutions to common problems encountered in software design.
Design patterns help in creating maintainable, scalable, and efficient software.
Singleton design pattern ensures a class has only one instance and provides a global point of access to it.
Example: Implementing a singleton class in Java -
public class Singleton { private static Singleton instance; private Singleton() {} public static Singleton getInstance() { if(instance...read more
Q3. What kind of databases you’ve worked on? And explain what is DML!
I have worked on relational databases like MySQL and PostgreSQL. DML stands for Data Manipulation Language.
Worked on MySQL and PostgreSQL databases
Familiar with writing SQL queries for data manipulation
DML stands for Data Manipulation Language
Q4. How you can parse location and shop name from a card transaction string?
Use regex to extract location and shop name from transaction string.
Use regular expressions to match patterns for location and shop name.
Look for keywords like 'at', 'from', 'in' to identify location.
Consider variations in transaction strings and account for them in regex patterns.
Example: 'Spent $50 at Starbucks Coffee' -> Location: Starbucks Coffee, Shop Name: Starbucks Coffee
Q5. What are the types of deployments?
Types of deployments include blue-green, canary, rolling, and immutable.
Blue-green deployment involves running two identical production environments and switching between them.
Canary deployment gradually rolls out changes to a small subset of users before deploying to the entire infrastructure.
Rolling deployment updates a few instances at a time, ensuring continuous availability.
Immutable deployment creates new instances for each update, avoiding in-place updates.
Q6. What is Blue Green Deployment ?
Blue Green Deployment is a software release strategy that reduces downtime and risk by running two identical production environments.
In Blue Green Deployment, one environment (blue) is live and serving production traffic while the other (green) is idle and ready to be switched to at any time.
This strategy allows for zero downtime deployments, as the switch between blue and green environments can be done seamlessly.
Blue Green Deployment also helps in quickly rolling back to th...read more
Q7. How vector databases work?
Vector databases store data in a vector format, allowing for efficient querying and analysis of high-dimensional data.
Vector databases use vectors to represent data points in a multi-dimensional space.
They are commonly used in machine learning and data science applications for tasks like similarity search and clustering.
Examples of vector databases include Faiss, Annoy, and Milvus.
Interview Process at Porch
Top Software Engineer II Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month