Invent & Simplify Questions Flashcards
Leaders expect and require innovation and invention from their teams and always find ways to simplify. They are externally aware, look for new ideas from everywhere, and are not limited by “not invented here.” As we do new things, we accept that we may be misunderstood for long periods of time.
Tell me about a time when you gave a simple solution to a complex problem.
Situation
This goes back to the time when I was senior software architect and we have around 20 JavaScript source code GitHub repositories, many more were going to be added. We have 13 systems and 7 services repositories. Any time any fix has to be done in one service, developers were not confident how many systems will be impacted and businesses started losing faith in us. Developers were in difficulty while fixing bugs because they had to open many code repositories at one time to fix 1 bug. Businesses used to spend 2 points for 1 point story. 1 point is around $4000 investment of business.
Task
I decided to solve this huge repository issue such that developers and business can get some simple solution
Actions
I have been part of many open source projects and contributing to them actively. I used to learn aws amplify code structure and learnt how they are using the LEARNA tool to solve their multiple repository issues.
However, that was not solving my company problem so I continued investigating the framework and found one more open source tool called NX monorepo. which gave me the ability to combine all repositories in a single repository.
I pulled all projects from 20 repo and combined them in one repo by using the NX nrwl framework. I had to solve deployment CI/CD issues for each system.
Results
Both dev teams found this as a huge simplification. I deleted all 20 repo now we have just one repo.
I build one visual graph that will show your changes impact on various systems. Developers are very confident with their changes.
Businesses are happy they save their money by not spending 2ble money for each work.
I also wrote many blogs on monorepo and educated other teams.
Tell me about a time when you invented something. Please walk me through a different scenario of a process you invented or improved.
Situation
This goes back to the time when I was the development lead and our customers were preparing to migrate to the cloud. For that reason I was tasked to convert all old Angular 1.x code into ES6 compliant so that we can leverage the latest technologies. I had a big challenge of migrating (driver, preview, ft, st, appeal, testcase) 6 systems source code. Around 10,000 files of code and 12,000 files of specs (unit tests).
Task
I decided to invent something new to fix this huge problem of code migration.
Actions
I studied a couple of files changed to convert them in ES6 and found many similarities and patterns of changes.
I developed various node.js stand alone tools to do those changes in an automatic fashion in one go for an entire 22,000 files.
After that I had to touch upon just a few files to fix their compile issues.
Results
I was able to convert all files in ES6, and my specs started running as well.
I saved money for business to resolve this big issue which my previous team was not able to solve by spending 3 points ( $15, 000 ) on it.
The tool that I developed was now used in my company by another team to help them migrate their old code to ES6 compliant.
What’s the most innovative new idea that you have implemented?
Situation
This goes back to the time when I was a senior software architect in AICPA. My customers were almost moving to the cloud. We were developing Azure functions for microservices and communicating each service using Azure Service Bus, a messaging framework. Business had purchased ASB service and for each namespace the charges were very high. We have 20 developers and for each one of them in order to develop they needed a new namespace. Business was worried about how to solve this because it was becoming very costly.
Task
I decided to solve this issue and come up with an innovative idea to save customer cost.
Actions
I researched the ASB messaging topology and tried to understand the architecture.
I came up with the Bundle Topic concept where every developer will create a bundle topic with their name and the entire microservices that he will be running will subscribe to that unique topic name.
This way we created 20 new topics and queues within a single ASB namespace and ASB had a limit of 10,000 topics within a single namespace. That was enough for us.
Results
All developers were able to work on single Basic subscription namespace for ASB
Businesses were able to save their 20 namespace cost; each namespace was expected to give them $1000 per developer per month cost. That was completely saved.
This saved our customers’ budget and I received good feedback from my CFO in my next monthly architect meeting.
Per student: $2000 per day
2 students per week.
Result:
20 students per week get them to $20,000 per day and $600K per month profit.
O2 Free coaching improved student count 90% more.
Tell me about a time you were able to make something significantly simpler for customers. What drove you to implement this change?
Situation
This goes back to the time when I was a software engineer in AICPA. My customer had 10 independent exhibits to show per question. Candidates used to complain that they are facing issues while opening and viewing exhibits and they were posting their interest to keep them simple enough such that they can read all of the exhibits simultaneously. Currently exhibits are in tabs.
Task
I decided to solve this issue for candidates.
Actions
I created a prototype where I created 10 independent dialogs for each exhibits
There I added a facility to close all, open all, open/close one by one. Candidates can open all exhibits at the same time and drag and move and read them.
I also implemented a tile cascade feature where candidates can tile all of these exhibits in one side and save their time.
Results
I demonstrated the demo to my product owners and they liked that simplifications
The feature got deployed to all test-centers globally and business received very satisfactory comments from candidates.
Tell me about a time when you had a challenging situation in which you had to find an alternative approach.
Situation
This goes back to the time when I was a software developer in AICPA. I used to work on various projects. Our business had a requirement to build a new system. They wanted to build this with limited time duration.
Task
I had a challenge to deliver this project on time
Actions
I found source code was very tightly coupled and many logic were duplicated in various places. If I had to develop a new system without reusing the existing service code I would have never delivered the story.
I analyzed the pattern in code, and created an independent Message Handler Framework, it is a middleware technology that could help to create central code to various common business problems.
This way I refactor existing code to move their logic in Message Handler Service and same service I re-used in new system
Result
I was able to deliver the project on time with an alternative idea, where I could now reuse the existing code and not duplicate their extinct logic and code.
The messaging framework that I created is now a fundamental block for every new project nowadays we write. This framework is our core library.
Entire development team in my company is developing using this framework with fewer bugs and they create more-reusable code thus helping businesses to save costs.
Example of a time when you proposed a novel approach to a problem (this could also be framed as a Think Big question)
Situation
This goes back to the time when I was development lead for AICPA client. We were doing many javascript node.js projects and everytime setting up a new project in node.js was a painful process. Developers used to make mistakes when finding the correct version of a library. Everytime business used to give us a story we were not able to deliver on time. Also the entire development team was not confident on creating new projects. We tried to create a document however that did not help. We had 4 development teams each with 10 developers in it, and everywhere we used to see different setup and different sets of issues.
Task
I decided to take this challenge and come up with some new way to work on node.js
Actions
In my past I have been contributing to open source, and teaching on youtube. I have done many node.js projects. I created 3 different projects one for system, one for service and another for utilities then I was able to run tests and projects without any issues. I reviewed them with my VP of software development.
Next I decided to write my own CLI which will generate these projects in an interactive manner.
I demonstrated to the team and they were all comfortable using cli to create projects.
Results
Team used to spend 1 point (3 days) to create and set up a project now it became a blink of an eye. No research, just run cli.
Product owners were able to save their money not spending the entire sprint on setting up projects.
We have a uniform project and folder structure in the entire company that reduces many unwanted bugs.