- Focused on innovation and up-skilled regularly. Trained self as well as underwent training where required (Windows kernel, Debugging, Big Data, Solr, …). Today, I can
- understand and debug assembly whenever required.
- write some (Linux) kernel code (C).
- build highly robust and scalable multi-threaded client & server applications (C, C++, C#, Java, PHP, .NET, Visual Studio, WinDBG, Apache, IIS, Windows, Linux).
- debug complex issues. Stack corruption, heap corruption, deadlocks, memory leaks, handle leaks…
- design database schema and write stored procedures/functions and decent SQL queries keeping performance in mind (MS SQL, MySQL, SQLite).
- build UI – desktops (WxWidgets/Java), web based (HTML), Android apps (Android Studio, Java).
- build free text search applications using Solr.
- write Map Reduce jobs in Hadoop to leverage its distributed capabilities.
- inject my own code (DLLs) into any Windows application by hooking Win32 APIs. Once my code is injected, I can do whatever I want. Log the keystrokes, send any information to any server, redirect network connections, …
- build web bots, crawlers (PHP, MySQL).
- Played as a team. Included testing team early in the development phase and asked them to punch holes in the design before implementing it.
- Set a very high quality bar for my own and my team’s deliverables.
- Traveled and interacted with our customers worldwide to understand their future requirements.
- Presented at international conferences.
- Visited IITs, NITs, IISc… Interviewed, hired & trained freshers, juniors, team/group members.
- Stayed away from politics. I don’t push people under the bus to
- get a salary hike
- get a promotion
- save my job
- look good to higher ups
- take credit for someone else’s work
- Stayed away from useless meetings, drinking the kool-aid, meaningless processes, outdated proprietary technologies and political culture that is/will be doomed.
- Gave plenty of credit to others where it is due.
- Asked for increments and promotions after successful deliveries of big milestones.
- Signed up for bigger challenges and asked for interesting work.
- Relocated for better opportunities every 2–4 years.
Although my leadership and technical abilities made me a manager in a niche MNC, I gave it up after a while to become an individual contributor again. It is so much fun to learn new things and innovate. Plus, I can survive all alone.