Started my career as Software Engineer at NCR Corporation back in India in 2015. For one year, I was writing code for POS machines related to a client called Debenhams , retailer in UK and implemented checkout flows while they were expanding to new country ireland. From the second year, I started owning complete kiosk solution of Debenhams on my own and delivered multiple enhancements.
Then I moved to Amazon in 2017, initially in digital content org in chennai. The team was responsible for creating different formats of ebooks compatible with different kindles released over the years. There I was first introduced to test automation, quality and frameworks. Very soon I enjoyed the role building frameworks and tools for developer productivity and product quality. Speed vs Quality is one of the most important trade offs in tech industry, If we move too slow, our business might get obsolete, if we move fast to the extent that quality is deeply compromised, we lose customer trust. I found SDET role having the potential to rightly balance this key decision in any org, making significant impact to the business. On top of that, as an SDET, my customers are mostly either developers or QAEs for whom I build tools and I can have easy access to feedback from my customers 24*7 in the office, to always keep me aligned on delivering impactful and relevant solutions. Because of these two reasons, even though many people don't stick to this role for long, I embraced it and decided to build my careers in this path.
Then I built test frameworks and tools for multiple products,
1. Test framework to validate all formats of ebooks are generated and available for kindle for all ingestions from publishers.
2. Built backend test automation framework for data platform called Astra. Astra is a unique database designed where parts of whole entity is owned by different teams.
3. Built test framework to validate price calculations for Amazon website. We used to have set of key value pairs like list of country codes, price models, tax models, currency codes, marketplace, delivery model etc, based on combination of values for these keys, we execute list of rules to determine price for each combination. and we also had association rules that guides list of rules that needs to executed with order number specified when a combination is provided. Now everytime something in these association rules changes, it was very hard to figure out the impact, diff in rules being executed in which order for different combinations and what is blast radius of this change. So, I wrote a framework to exhaustively execute many possible combinations and get list of rules that gets executed for each combination in order and compare it with previous snapshot, and also present overall blast radius.
4. Then I moved to Amazon Pay, Bangalore, where I was exposed UI test frameworks and tools.
DidYouID build tool
CUTE, moved to US , made it successful,
working backwards hackathon
Codeless API Automation
DTL Tools and Quality for 3 teams: Tooling, High Sev, Coverage, stability, Op Excellence
shark tank , amazon pay
UI tests are extremely unstable, but crucial for us in the org.
Identified speed of iteration is crucial for UI automation and wrote PRFAQ for Amazon's first
Designed it in a very scalable and future compatible way.
Why do you want to join Apple?
I think I have a unique relationship with Apple products, All through the college, I was always using windows laptops, android etc, It was when I joined in Amazon back in 2017, I was offered to choose Mac or HP Windows. I was always familiar with windows and I want to do my best in new role and thought, let's go with windows. I also had a feeling that people use Apple products to show off and I don't have a very good reason to switch to Mac except for peer pressure. but then after one year, I have switched to mac, then I felt Apple products try to make connection with user by being so intuitive in design, aesthetics, customer value and most importantly quality of products.
There were so many small moments of delight, starting from using terminal for dev environments, siri, design,
I remember I held iphone in my hand, I experience a bit of confidence boost for some reason, I have never experienced such feeling with any other product.
I often don't want to close my eyes and talk to siri for alarms, music, navigation, maps etc.
5 products - 2 macbooks, iphone, watch, ipad.
I have used windows for one year, everything is going fine
My love for SDET role , SDETs are fortunate to work with customers directly on day to day basis. SDETs role is intrapreneurship to the most extent.
Firstly, I am truly grateful to amazon in terms where I have started 8 years back and where I am today, in terms of learnings, growth, fullfillment regarding what I have achieved, how I have grown as team player and team leader and so many other things.
I see few similarities between Apple and Amazon's culture , starting from Customer first approach,
But, I see
However, It's been 8 years in Amazon and worked in 3 different orgs, feeling bit stagnant in terms of learning, and also want to imrpove my scope of positive impact.
I have not been in job market for 8 years.
My career journey
Asking, listening and identifying strengths of different team members and aligning organization goals with each individual long term careers goals with their strengths is crucial. Maintaining High trust environment both with manager and peers is crucial to colloborate. Give sense of ownership.
What steps do you take to continuously improve and evolve as a leader and manager?
Source of conflict, if it is technical, it is easier,
Can you describe the direction and focus of your team?
How have you leveraged your influence to make an impact in the past?
Leveraged my reputation in Codeless domain to propose one more idea in codeless domain related to our org business.
Situation: At Amazon Pay, I observed that UI testing was time-consuming and often led to bottlenecks in our release processes.
Task: I proposed to build Amazon's first Low Code UI Automation Solution (CUTE) to accelerate the UI testing process.
Action: I conducted research, built a proof of concept, and presented the idea to the stakeholders. After securing buy-in, I led a team to develop and implement the solution.
Result: The solution was adopted by the entire organization, significantly reducing the UI testing time and presented at DevCons in Dublin and Seattle in 2022.
def lengthOfLongestSubstring(s: str) -> int:
n = len(s)
set_chars = set()
ans = 0
i = 0
j = 0
while i < n and j < n:
if s[j] not in set_chars:
set_chars.add(s[j])
j += 1
ans = max(ans, j - i)
else:
set_chars.remove(s[i])
i += 1
return ans
# Time Complexity: O(n), where n is the length of the string
# Space Complexity: O(min(n, m)), where m is the size of the character set
High-Level Design: The framework should be modular, easy to extend, and support parallel test execution. It should consist of the following layers:
Low-Level Design: Each layer will be implemented as a separate module in Python. Use design patterns like Factory for driver creation, Command for test actions, and Decorator for enhancing test actions with additional capabilities like logging & screenshot capturing.
Considerations:
```