You are being watched. The government has a secret system, a machine that spies on you every hour of every day. I know because I built it.
I designed the machine to detect acts of terror, but it sees everything. Violent crimes involving ordinary people, people like you. Crimes the government considered irrelevant. They wouldn’t act, so I decided I would. But I needed a partner, someone with the skills to
intervene. Hunted by the authorities, we work in secret. You’ll never find us, but victim or perpetrator, if your number’s up…we’ll find you.
What did I just watch?
So I just finished watching last episode of Season 5. All I can say is that Person of Interest, a Nolan’s masterpiece is the best TV series I have watched till date. Most intense, best actors, excellent acting and gripping story which only gets better with each episode. What do you expect when you start a TV series? Good acting, story that holds you tight, witty dialogues. Well, it has everything in it. It got me hooked right from the very first episode.
Spoilers ahead… Read at your risk.
The story revolves around a person who happens to be the best coder and hacker world has ever known, or more precisely, the world should know, because he is very good at avoiding digital footprints. You just can’t find him on web. In the very childhood, he learns that a system should be made robust. If they don’t want you to get inside, they ought to build it better. And thus he builds a machine, an AI that can watch every single moment of everyone’s life, listen every phone conversation, read every text, has access to every database and analyse it to find out if anyone is at risk or going to do something wrong. The machine becomes so intelligent with time that it starts talking to people, giving commands, hiring snipers to protect her primary assets and establishing a company. The creator hired John Reese, a former badass CIA guy to fight crime, to protect people whose number have come up. The story becomes intense when a parallel AI comes into picture who is given full control. Two gods fighting with each other where one has the mission to protect human kind at all cost while the other with motive that few people must be sacrificed for the greater good. I can’t say what did I like most in the show, was it the hot sexy root whose seducing sounding voice is embraced by the machine after she dies or confidence and panache portrayed by Mr Reese, the man in bespoke suit who is near to untraceable or Finch who never fails to surprise you with his geeky words or Greer, dark yet convincing, lies yet authoritative tone in his voice.
Some of the episodes are freaking so awesome that make you feel sometimes, TV series can be better than movies.
There were pleasing moments when machine behaved like a human child asking its creator very innocent questions:
But if you erase my memories, how will I learn from my mistakes?
How will I continue to grow?
And how will I remember you?
Another conversation between her and its creator, she had asked Harold to teach chess:
Harold Finch:[to The Machine in a flashback to 2003] You asked me to teach you chess and I’ve done that. It’s a useful mental exercise. Through the years many thinkers have been fascinated by it. But, I don’t enjoy playing. Do you know why not?
[Receives a ‘No’ reply on his cellphone]
Harold Finch: Because it was a game that was born during a brutal age when life counted for little and everyone believed that some people were worth more than others. Kings and pawns. I don’t think that anyone is worth more than anyone else. I don’t envy you the decisions you’re going to have to make. And one day I’ll be gone. And you’ll have no one to talk to. But, if you remember nothing else, then please remember this. Chess is just a game. Real people aren’t pieces. You can’t assign more value to some of them than to others. Not to me. Not to anyone. People are not a thing that you can sacrifice. The lesson is… that anyone who looks on the world as if it was a game a chess deserves to lose.
Dialogues from the show I really liked
Sure, Everyone dies alone.
But if you mean something to someone,
if you help someone or love someone,
if even a single person remembers you…
you never really die at all.
Episodes you must watch
The Day the World Went Away (Season 5)
6,741 (Season 5)
If-Then-Else (Season 4)
return 0 (Season 5)
Why should you watch this show?
If you love Sci fi, love code, big data and power of AI engrosses you and you think that logic is God, this show is for you. The series will keep you sit tight right from the beginning to the end and there will be times you will find yourself biting nails to know what is going to happen next. If you haven’t watched it, watch the first episode. You will definitely like it.
This post was residing in my draft for quite long. I finally got some time out of my busy schedule to refine it.
The first question quickly pops up on why am I writing this post at all. There are already tens of hundreds of similar compilations on web that talks about this.
Well, following reasons compelled me to do so:
Being a GFG moderator, I’ve been getting many requests from readers through various social media (FB, LinkedIn, Quora, InstaGuide) and various mail clients asking for mentorship and guidance on how to prepare for top MNCs like Microsoft, Amazon, Google etc
Having gone through similar journey and witnessing many of my friends succeeding, I feel knowledge should be shared. My experience might be useful for newer generations who happen to chase the same goal as once was mine
Please note that this article is purely a reflection of my learnings, what I followed through the years and my experience. This is NOT the only way to improvise on what is needed – your coding skills, strengthening DS & Algorithms and boosting problem solving skills. I repeat, this is NOT the only way. There are things I couldn’t follow because of time constraints or didn’t follow because I was just not aware. Please comment if I missed anything which is worth mentioning here.
Language has been a topic of debate between aspirants since years. It’s always good to master one language, knowing ins and out of it rather than hopping from one language to other. Why? Because sometimes it might happen to you that when you get a problem, you start wondering what language you should choose and your focus is compromised. When you should really concentrate on problem solving, Implementation comes later. Then while you are coding, you plan to change the language in between. This won’t serve you good in interviews. If you’re able to solve a problem in language ‘X’, eventually you will also solve it in language ‘Y’. Learning a new language is just a matter of time. A language might not be as widely used after 5 years as it is being used now. Your ability to solve a problem will what matter in the long run.
I usually switch between C and C++. If time is at its crunch, I prefer to use STL (standard library functions) instead of writing my own version of Linked List. If I want to develop a project, an android app for instance, I go for a managed language because it is easier. If I want to automate something to save my time, like replying and liking my birthday wishes, a python script is the saving grace. You got the point, right? Master one language and learn others as per requirements.
Data Structures and Algorithms
Data Structures and Algorithms is very important and serves as the backbone of problem solving.
For beginners, Fundamentals of Data Structures in C by Sahni Horowitz is good. After reading it, you should be able to understand basic Data Structures, how they are implemented and fewer examples where they can be used. Don’t expect to learn advanced DS through this. After your basic concepts are clear and you are comfortable implementing them in a language of your choice, you can work on learning algorithms and solving problems.
Many sites (including GeeksforGeeks) present problems in a very adhoc manner with no order of difficulty level. This makes things difficult for beginners because they don’t know the difficulty level of the problem they are attempting. Data Structures and Algorithms made easy by Narasimha Karumanchi is a good read after you are comfortable with the basics. It has pretty good collection of problems organized by difficulty level. Just make sure to try to solve problems on your own instead of rushing for the solution. Once you have a fair understanding of DS and have got some confidence in solving problems, jump to online portals and start solving problems from topic of your choice. GeeksforGeeks is good to start with.
Sometimes, basic DS don’t serve the purpose to solve problems and you need to know advanced DS. Day to day problems like implementing a prefix based search for a phone contact list to finding the dictionary word from a jumbled sequence of characters need special kind of DS. There are many of them – TST, Trie, Suffix tree, Suffix array, Fibonacci heap, Segment tree, Gap buffer, Rope, Skip list, K Dimensional tree and so on. While it is good to know the implementation of these DS, I would suggest to also know when to use one.
So you got a gun, understand how to use it, probably have used it before. If you are going to fight a war, you won’t like to rely upon your amateur experience. You would prefer to practice hard to save your ass. Now try to think it in perspective of problem solving. You know what DS are. But you also need to know when to use one. Welcome to the world of problem solving. You are given a problem and you are asked to solve it. That problem can be anything starting from a simple puzzle to implementing a user scenario. You must have noticed degree of connection feature in LinkedIn. How will you implement it? Does your approach take care of scalability? Will your code crumble when user base increases ten folds? This is the most important skill top MNCs usually look for. How do you approach a problem? How do you divide it into modules? How do you solve each of them and then combine them?
I separated out DP because it is one monster which is difficult to master upon. No matter how many problems did you solve in the past, a new DP problem can always surprise you. The more you will practice, higher the chances will be to find out patterns. Google is peculiar about DP. You should expect at least one DP problem per interview round if you are preparing for Google. Practice DP section from:
Competitive Programming plays a very important role in boosting problem solving skills and ability to perform under time pressure. Do participate in various online portals like TopCoder, CodeChef, SPOJ. Here is a post on Getting started in sport of programming.
Design and testing
So you are good in DS and Algos. You are probably good in problem solving as well and you come up with different approaches with varying time and space complexity. The problem which you solve in Competitive Programming is well defined and has to work under an environment which nobody will probably use. What if you are asked to implement a user scenario. The problem statement is usually vague and you need to discuss a lot to resolve ambiguities. This is where design comes into picture. How will you design a redo-undo feature? What data structures will you use to store history in a web browser? How will you implement auto-complete feature in address bar? Let’s say Amazon wants to build a feature that would resume a video stored in cloud from any device. What data structures will you use? How will you scale up things? Does your design take care of concurrency issues? What about the performance? What if you and your girlfriend share the same cloud account and are trying to play the same video from different devices?
Now you have thought through the design well, have come up with different data structures to use with pros and cons in mind. While implementing, you must take care of corner cases. You must be aware about the integer overflow issue in Youtube video view count. While implementing, they never really thought that the view count can exceed what an integer variable can hold and BOOM, the view count cycled back to zero.
Before a feature goes live, it must be tested well. It is good to practice some test questions as well. How will you test a Insert image feature in MS Word? What about a cut-copy-paste feature? How will you test Temple Run game? Try to write all the possible test cases and how you are going to handle this in your code. Writing a robust code is very important. If you take care of these things at an earlier stage, you can avoid silly bugs (and boost your chances of getting selected in interviews).
Have a sound understanding of Operating System. The dinosaur book by Galvin is a good read. Know how networking works and have insights on DBMS.
First impression is the best. Resume is the first thing that HR will use to decide whether to call you for interview or not. And they have got hundreds of them. So they will usually scan it for 20 seconds to 2 minutes. It should be clean, concise and elegant. Each word mentioned should worth the space it eats. The rule of thumb is if you have less than one year of experience, the size of resume should not exceed a page (with few exceptions).
Few points to note:
Maintain a header to fit info like name, email id, address and contact number
Mention level of expertise corresponding to each language. Example: Proficient in C and good at Java
If you are mentioning a project, write your key learning, impact in the team and . If this project is online (an app), don’t forget to include the link. This will show that you built something that is being used by people . Guess what, this is what companies do, building a product, stabilizing it as per user feedback, taking in new feature requests and so on.
I get many messages asking me for a favour to refer them. When I ask them how much comfortable they are with DS and Algos, they say good enough. Then I rephrase my question to how do they feel when they solve interview experiences at GeeksforGeeks. Either they haven’t heard of GeeksforGeeks or they never read. This is not a surprise. GeeksforGeeks is still growing. But when I ask them a problem on DS by tweaking already existing famous ones, all they say is they haven’t solved this problem before. Please do NOT do that. Dreaming is good, but it will come true only when you work towards making it a reality.
If you are not able to clear the interviews, you will have wait again for 6-12 months depending on the company policy before you can apply again. Now coming to the point, you can apply for a position at Microsoft either through Careers page or through referral. Referral usually bumps chances of getting an interview call because your resume gets to the system through a person Microsoft trusts to be a good engineer. How do you ask for a referral? It’s simple. Forward your resume to someone you know working there. No one will say NO unless your resume is filled with something which doesn’t fit company requirements. Rule of thumb is we believe in solving problems and if you are good at it, we would love to see you here. Remember, everyone wants to work with a smart person. And this is usually true for any company, not just for Microsoft.
Do’s and Don’ts
Practice, practice and practice
Make a habit of writing clean and readable code (avoid variables names like i, j)
Make sure to handle all corner cases
Use pen and paper to practice code. In interviews you have NO access to a compiler
Don’t mug up the solutions. Try to solve on your own
Think of different ways of solving a problem and thoughts on why one should be preferred over the other
I have answered few questions related to interview preparation on Quora. You might find some content missing here in blog and it is intentional to avoid the duplication of efforts. Please read my technical answers here.
Resources (which I haven’t talked about):
Cracking the coding interview by Gayle Laakmann: A must read once before interviews. It covers aspects like what interviewers expect from you, how to deal with behavioral questions and few interesting problems. It will change your thoughts about design and test problems for good
GeeksforGeeks: A bible of problems (with well explained solutions). Make sure you do NOT rush for solutions. Try to solve problems on your own no matter how much time does it take. With time and honest practice, you should get better
CareerCup: A huge collection of problems. Though you can’t rely upon solutions, it provides a rich community for discussing problems. I found it good for discussing design problems
Project Euler: A heaven for mathematics lovers. You solve the problems using some formulas on paper and then write code to get the final solution. Solve at least 40 problems from this site.
A thousand memories rolled down like a motion picture in his eyes when he heard her name after all those years.
“Just an acquaintance”, he whispered with a hard smile as his eyes were strong enough to hold the tears.
He always found challenging to express his feelings for her. How life could have changed if he would have dared once, had spoken those feelings ballooned inside the heart, he was wondering. He knew, somewhere she too had a soft corner for him.
Someone has rightly said, When in love, express it, keeping it to yourself doesn’t help either.
All those memories started playing like a flash motion. He was time travelling in the memory chains.
How can he forget the very first, all of a sudden, small chit chat with her. He still remembers that evening in the library, that she had turned from boring monotonous into a beautiful memory that he still cherishes.
“Hey! I am Ritika”, she said in a joyous tone and moved her hand in an amicable gesture. I am not sure if we know each other, but we are in the same section.
Well it was sort of most unexpected event one could have ever imagined. His eyes grew wide in surprise and he felt like someone has poured bucket filled ice inside his stomach.
Did she catch him looking at her from the corner of book? It was true that he visited library in evening hours just to see her, to see her smile. Her smile that always seemed to hypnotise him. There was such an enchantment she had in her sapphire blue eyes. He could feel his tongue magically glued with some invisible string.
“Hey! I am Ritika”, she chirped again. This time she was smiling. He guessed she had figured out he was not expecting her, at least not at this point of time, when there were people around, sitting in couples, reading, teaching and whispering so called romantic talks.
Somewhere on another thread in his mind was executing few poetic lines…
He kept looking at her and time flew by,
He wondered why he couldn’t take his eyes off her face,
Like the moon and its moonlight,
He kept looking at her with awe,
But never imagined he would get to see her so closely.
“Oh Hi!”, he replied briskly.
“I am Siddhartha”, he was very quick and nervous. “You can call me Sid”, he further added.
“If you don’t mind, can you please help me with few questions? Exams are near and there is so much to read and I haven’t got many friends”, she was somehow able to bind all these words in a deep single breathe. He didn’t need to be very observant to say she had prepared this in prior. She indeed knew well how to break the ice.
“Yeah! Sure”, he still couldn’t believe all this was happening in reality.
She pulled a chair and sit beside him opening the book. His senses were lulled by her ravishing perfume as she pushed herself closer to point to the problems she was finding difficulty into.
“What will he do when he is not able to solve the problem? No, it won’t be good to loose impression in the first encounter itself. She had confidence in him and what will happen if he breaks it. Won’t she think he is just a show off?”, his head was spinning with many questions. Fear seemed to wrap him under her arms.
“But he hardly faced problem in maths before. After all it was his favorite subject and he could spent hours solving equations and all as if it were his girlfriend”, another voice was overpowering the cold fear.
The problems turned out to be a cake walk. There were few instances when he felt she already knew the solution. “Is she testing his intelligence?”, He spoke to himself.
He didn’t have to think much. It was already 6 in the evening and she needed to rush for the hostel. She broke his reverie by snapping her fingers.
“It was nice to meet you Siddy. Hope to see you soon”, she said in sugar coated voice and hurried herself outside the library room before he could say anything. “And thanks”, a distant voice broke the grave silence.
That evening was different. He could feel it. And he realized it when his roomie asked, “Why are you smiling on your own?”
“Just remembered an old joke on pudding”, he replied trying to hide what had just happened.
Few moments no matter how long, give you the best smile, the best happiness. He spent whole night awake listening to “Only you” in loop.
Looking from a window above, it’s like a story of love
Can you hear me
Came back only yesterday
I’m moving further away
Want you near me
All I need is you to stay
All I need you for another day
And all I ever knew
Life is all about how you live it. We all have got same 24 hours in a day. Some achieve much. Some achieve less. Some do wonders. Some do blunders. It’s about what we learn from our mistakes. This is the top 12 list of things I learnt last year.
1. Be brave. Pretend to be, even you are not. Nobody will know the difference. People cannot read your mind.
2. Dare to take risks. You would regret less about the things you did than the things you didn’t.
3. Your virtual life is not going to help you in your physical problems. Find some time out of your busy schedule and meet people you care about.
4. Learn to say NO.
5. Don’t waste time worrying about the people who don’t spend time worrying about you.
6. When angry, count ten.
7. Don’t do bad to people if you can’t do good. You will feel good in the long run.
8. Keep smiling. A simple smile could have you looking several years younger in an instant.
9. Don’t compare your life with the people around you. You have no idea what their journey is all about.
10. When in love, express it. Keeping it to yourself doesn’t help either.
11. There will be times when you would feel like king of the world. Be patient, humble and down to earth, because that is how people will remember you.
12. You can sometimes be wrong. Apologize for your mistakes and learn to appreciate people for things they do.
Come with me my love,
Together we will reach
where noone has ever gone,
Lost in a world of our own,
Deep love not so ever known,
Hold my hand O’ love
till all the stars burn away,
Leave fragile world behind,
Walk together under the warm sun
in cold winter as we are one,
Come with me my love,
Together we will reach
where noone has ever gone,
My life is in vain,
Without you, my name will be slain,
Because you touched my heart
by your words,
Rendered everything else absurd,
Hold my hand O’ love
till all the stars burn away,
till we have our last breathe,
Because your absence
questions my very existence,
Come with me my love,
Together we will do
what few have ever achieved,
under the warm sun
in cold winter as we are one.
There were countless moments of mood swing. I already had an offer from Microsoft. I wondered if I should try for other biggies like Facebook or Google. Bottom-line was, I had fallen into procrastination trap. I was shy of 9 months to join Microsoft. I wanted to enjoy life. I wanted to take a break. My then friends at Google and Facebook had mixed suggestions.
“Dude, you should really give FB a try. I can refer you and interview would be scheduled in 2 weeks”.
“It’s time to explore. Once college is over, you are never gonna get it. This is the time to have some fun”.
Out of those precious 9 months, I spent 5 months at home doing almost nothing. Major chunk of my time was invested in only eating and chatting. When boredom seemed to kill me, I just used to compile an article on GeeksforGeeks. It was fun.
Sometimes even a simple mail gives you goosebumps. I had a message from Google recruiter mentioning my profile looked interesting and if my interest was aligned, they could commence the interview process. With the mail was attached a video covering their expectations from a candidate in Google. I thought of giving a try to Google. But my practice was at a slower pace. Writing articles and solving problems were just to kill time and pure altruistic. Google is a big brand. I definitely wanted to try my luck there. It was just not the right time. It would be a pleasure to enjoy Microsoft etiquette for the time being.
July 13, 2013
The next phase begins
A long rest had finally come to an end. Nothing could make me happier than to see a person waiting at the airport holding a placard with my name imprinted on it. He directly drove us to Rejenta One. A month stay in a 5 star hotel, dedicated car, a driver, couple of good friends and new city. Whole world around me was screaming to explore it.
July 15, 2013
First day at office, mixed feelings, exhilarating and scaring at the same time. Everyone I met seemed to be pretty smart. I got Visio team, a part of Microsoft Office div. It was embarrassing that I was going to work on something I never heard of. Visio is an enterprise software not so famous among students. It captures a huge market for clients looking forward to create flow chart and diagram. In a nutshell, it is something that simplifies tens of millions of human life.
When I had a feeling that I have learnt enough to fasten my deliverable, a reorg happened and devalued most of the things that I worked upon. As they say, only skills acquired through the process matters in the long run, skills to understand and solve a problem. New team and new manager, it was a tabula rasa. Satya’s vision to focus on mobile and services landed me in an Android team. A familiar environment and some prior experience, starting was as smooth as butter. Nightmares begun when I was assigned a problem to apply effects on an image. The office codebase is huge, medieval and it’s an ocean if you don’t know where to start. I still remember those hard moments when I was just looking through the code to pick hints, searching keywords like pImage, IImage in the hope that at least the naming convention would lead me somewhere. It was one of the most fast paced project and I was (un)lucky to be a part of it. Learning was great and sleeps were compromised. My team owned low level Graphics rendering stuffs, everything that you see on screen.
Work hard, party harder
Good work should be rewarded and celebrated. Microsoft knows it. It’s not a small thing to book airbuses for 300 people to fly to Goa and stay in one of the costliest luxury Hotel Leela not to mention heavenly parties and unlimited food and drinks. This is how we celebrated our Android release and combined it with an out bound training.
As I am writing this, another reorg has landed me in Apple team. Good thing is I have got chance to take a closer look at apple products and its OS. Some of the nasty rendering bugs still give nightmares. It becomes worse when you get response on the top of your fix mentioning that your change would be impacting X millions of customers. I have learnt that this is part of life and as long as your learning curve is steep, things would just work fine.
Life at Microsoft in a nutshell
It’s been 3 years since I joined Microsoft. 3 projects, 5 managers, lots of learning, challenges, obsession to achieve the best and never ending work. The journey has been no less than a roller coaster.
Every year or so, a reorg happens and either the project or manager changes. Every time It’s a tabula rasa. As they say, change is the only constant in life. Good thing is you always get to work on something new with new people, diversity at its best.
In office team, we spend most of the time reading code, talking design stuffs and less time writing real code that goes in production. The impact is so huge that we can’t afford critical mistakes.
Effort is important, but knowing where to make an effort makes all the difference!
The type of work can be summarized by a very short story.
A giant ship engine failed. The ship’s owners tried one expert after another, but none of them could figure but how to fix the engine.
Then they brought in an old man who had been fixing ships since he was a young. He carried a large bag of tools with him, and when he arrived, he immediately went to work. He inspected the engine very carefully, top to bottom.
Two of the ship’s owners were there, watching this man, hoping he would know what to do. After looking things over, the old man reached into his bag and pulled out a small hammer. He gently tapped something. Instantly, the engine lurched into life. He carefully put his hammer away. The engine was fixed!
A week later, the owners received a bill from the old man for ten thousand dollars.
“What?!” the owners exclaimed. “He hardly did anything!”
So they wrote the old man a note saying, “Please send us an itemized bill.”
The man sent a bill that read:
Tapping with a hammer………………….. $ 2.00
Knowing where to tap…………………….. $ 9,998.00
There were many times I thought of a switch. The thing that always seemed to hold me was the thought that I would be doing the same kind of work that I am doing here. Besides, I am happy here, living life as I always wanted, trying out different things, exploring.
GeeksforGeeks after Microsoft
I usually get messages like, Why my contribution to GFG has slowed down. Is it because of my busy schedule?
Seriously speaking, the passion which was ballooned inside me 3 years ago has faded. Coding is not the only thing that fuels me. In my college days, I used to code for fun. Whenever I found myself struck by the boredom lightning, solving a new problem or brainstorming a better solution was the saving grace. My contribution has been greatly compromised and now if I write, my focus is more on the quality rather than quantity.
Sometimes I ask myself, what do I know except coding? Is my life all about staring at the screen and writing geeky characters? A lot of things are there in the world and you won’t know what you would like the best until you give it a try.
For the past few years, I had been wondering what my life is meant to be, what are the things out there which will render me with greatest pleasure, what is the secret ingredient of being happy.
Ganesh chaturthi also known as Vinayaka Chaturthi is an Indian festival that marks the birthday of Lord Ganesha. This auspicious festival is observed in the month of Bhadra (mid August-mid September) according to the Hindu calendar. Ganesha, the elephant-headed God is the symbolization of good fortune who provides prosperity, fortune & success and travels on a mouse. As per Hindu mythology, he is the son of Lord Shiva and Goddess Parvati.
Dhoolpet in Hyderabad is quite an attraction for Ganesha statues. An array of Ganeshas varying from size as small as the palm of a child to that of a big cupboard. The place appears more fascinating and marvelously beautiful in the incandescent light. I got an opportunity to capture the beauty through the lens.
35mm f/1.8, ISO 250, 1/80 at f/1.8
Ganman, A unique combination of Ganesha and Hanuman Observe the epic mountain lifted by the hand on left and Gada in the hand on right. There is a mythology that when Hanuman was asked to pick up some herbs from a mountain, unable to identify the right herbs, he delivered the entire mountain in the battle-field.
35mm f/1.8, ISO 250, 1/80 at f/1.8
The color saturation in this picture just came out perfect. Bright gleaming colors and well distributed hue is eye soothing.
35mm f/1.8, ISO 200, 1/200 at f/1.8
A street photography is incomplete if it doesn’t portray a story or is emotionless. A boy carrying Ganesha for sell.
35mm f/1.8, ISO 250, 1/80 at f/1.8
35mm f/1.8, ISO 250, 1/80 at f/1.8
A two dimensional array of Ganeshas.
35mm f/1.8, ISO 250, 1/80 at f/1.8
I tried to give a different angle to the above shot and it changed to something like this:
35mm f/1.8, ISO 250, 1/80 at f/1.8
Fascinating huge build, looking as if it is touching the sky when taken from sitting on the ground.
35mm f/1.8, ISO 250, 1/80 at f/1.8
As you might have observed, I never changed aperture of the lens while shooting, although I was shooting in full manual mode. I focused on experimenting with shutter speed and ISO while keeping the aperture at max.
Shilparamam is an arts and crafts village located in Madhapur, Hyderabad, India. This place is a good attraction for art lovers and photographers alike. The best time to visit is at the evening when the sun is about to set.
Though I have been to Shilparamam many times before, I was more like a poser facing the front of the camera than seeing it behind the lens. I got a chance to pay a visit to this awesome place again. This time I took camera gear with me. It was a monsoon day. Sun was showing on and off and my only fear was that rain doesn’t spoil my experience.
My day started with this simple capture. I wanted to make sure if my settings were correct according to the light.
35mm f/1.8, ISO 125, 1/4000 at f/1.8
35mm f/1.8, ISO 125, 1/4000 at f/1.8
There is a beautiful Shiva statue surrounded by rocks complimenting the scene. The human creation on the left was adding a new angle to the composition.
35mm f/1.8, ISO 250, 1/800 at f/3.5
Being very amateurish, I wasn’t sure if building was adding any beauty in the frame. So, I decided to shoot Shiva in a different angle. I am not an expert, but my vote goes to the below capture.
35mm f/1.8, ISO 250, 1/800 at f/3.5
35mm f/1.8, ISO 125, 1/160 at f/1.8
This is one of my favorite pictures. I was lucky to be there at the right moment. Sun was about to set. Reflection of the sun in the lake and that of the boat is just amazing. I tried the same shoot after 15 minutes and it didn’t come that good. I am still wondering about that rainbow effect in the picture. There was no rain. Is it because of UV filter I used?
35mm f/1.8, ISO 250, 1/60 at f/20
35mm f/1.8, ISO 250, 1/500 at f/1.8
I sat and placed camera at the level of the pot and took this.
35mm f/1.8, ISO 250, 1/100 at f/2.0
Being a landscape photographer, I always wanted to shoot waterfalls and big fountains. The silky effect on the waterfall catches the attention. The trick is to open the shutter for long time to capture the smoothness of water which results in silky milky effect.
In the last part, we read the story of a boy who wanted to live his dream no matter what the cost. We will resume from the moment Microsoft campus visit was announced.
When your friends are celebrating hard, throwing parties, while you try to avoid them and lock yourself instead, questions like this are obvious.
“Which is your favorite company?”, my friend asked.
“You’ll know soon”, I murmured.
It is difficult if you are in a non-enthusiastic environment where people around you are even scared of dreaming big and setting higher goals. In case you speak loud your aspirations, they try to pull your legs. There was no space for mistakes. Opportunities knock rare often and fortunately I knew it. I was gonna get only one chance. That’s it. If I miss it, I miss it. This could be a regret I would have to live with. Other good companies in line offered half the money Microsoft did, leave aside brand value, perks and work culture.
The time had arrived. It was the same day and time Hogwarts Express leaves from Platform 9¾, 1st September, 11:00 AM sharp. If I wanted to board the train, I had to cross the barrier first. And that barrier was written tests. The train would then test your patience, perseverance, hard work, skills in its journey. If you failed in between, you had to board down. If you passed, it would directly lead you to Microsoft. Like Harry, I too didn’t wish to miss it.
It all began
It was a hectic morning. There was a big rush in washrooms and people were running around. The first written test was pretty easy. 15 objective questions and 30 minutes of time. 77 out of 400 made it. The second written test was scheduled the very next day.
I and Abhinav were sitting next to each other, barely talking to anyone. We had to code 3 problems in 60 minutes on a text editor leaving any scope of compiler correction. You know it went well when you wear a smile after you finish. Luckily, We were able to solve all problems.
Rumors were in the air. Microsoft usually takes time to evaluate the written coding round. We were not sure when the result would be announced. Honestly I wished it to be soon. The sooner, the better.
The quiet before the storm
I was gravely quiet most of the times. May be because I was thinking about the problems, and about the interviews, and about the list of things to do if I get selected. Millions of things were itching in my head.
Solving interview experiences was kind of comforting. “If this is what Microsoft asks, we should do well”, Abhinav and I always said things like this.
Year 2012, September 16
Boarding Microsoft express
I have never been an early bird. Still I managed to wake up at the crack of dawn. We gathered in the auditorium at the first blush of the day. Result of the written was announced. They shortlisted 30 out of 77.
Four years it’s been, and yet, here I write as if it were only yesterday. I remember every small detail, every word I spoke and each discussion I had in interviews. Either my memory is not that fragile or that was quite a big day for me. I still don’t know the answer.
I hadn’t eaten anything since the morning. The spirit was keeping me up. One group interview followed by two rounds of face to face interview each lasting 60-90 minutes and fear of losing it anytime as if a sharp edged sword was hanging across my head was enough for one day. They kept on rejecting candidates as each round progressed. The number trimmed from 30 to 14 to 10 to 5.
In the third round of interview, he said I had already proved I was a great coder and he wanted to check how I perform in other areas like design and testing. I was also asked to showcase my passion for technology. We discussed about various products, their design, why they were designed that way and why I liked them. It was fun discussing the technology (Gap Buffer DS) used in Text Editors, automata and compiler. I can understand his love for these as he was working in Visual Studio team at Microsoft. He then moved on to discussing things like which role I wanted and why so. He saw same passion in me that he observed in one of his friends and he was doing really great at Microsoft. This was the longest round and lasted around 90 minutes.
That night, when I was in cafeteria to catch sandwich, I stumbled upon a guy. He asked me how would I like to be beaten. Funny part was, we had hardly talked in 3 years of college. The same day I got few congratulation mails, although 2 more rounds of interviews were scheduled on the next day. I was very close but I was still one step short of milestone.
I remember those silly thoughts that popped up our minds. When we’ll make it, we would have two refrigerators in our house. One for food and other for drinks. When we’ll make it…. The food in college hostel was horrible. If you had Veg Manchurian once, you would put all efforts to stay away from food like that your whole life.
Year 2012, September 17
Two more rounds of battle
When your name starts with 2 A’s, you are always the first one to face everything that calls for first name protocol. I suffered it my entire college life. I wasn’t spared in Microsoft interviews either. Each round of interview started with me. Abhinav was the last. Those in-between were trimmed down.
I was just on time for remaining two rounds when they surprised me to know that my one round of interview was cancelled and I had to face last round with hiring manager on Skype. Unlike an HR round, it was purely technical focusing on design, testing, Big data, Graph and Social Networks. We discussed many things few of which I had already covered in GeeksforGeeks posts. Thanks to Facebook for writing technical details of architecture they use which I was lucky to read. It lasted around 90 minutes.
Time seems to freeze when you’re waiting for it all along. Nights were restless. Days were better neither. Mood swings were at its peak. Right from the day Interviews were over, everyone I stumbled upon asked the same question, “Hey! When the result is coming?” or chirped comfy words like, “I know you’ll make it”. It was eerie and I just didn’t know how to react.
Year 2012, September 24
The BIG day
It was an Intel day. Although I wasn’t interested, I suited myself up to check what they had for me on the plate. People were getting called for interviews and I was waiting for my turn reluctantly. I was just hoping for a magic, to know the results of Microsoft interview. This could push me to do fair in Intel.
And then, I heard my name. “Aashish and Abhinav! Are you there? Please come on the stage”. I wasn’t sure what had just happened. Abhinav was sleeping in his room. He wasn’t even there. Every pair of eyes was staring at me as if I was being X-rayed.
“Congratulation! You have made it. They have just mailed us the result.”
“Microsoft has selected Aashish and Abhinav”, they boomed on microphone after a pregnant pause.
The auditorium burst in cheers and claps. Oh Buoy! That was the moment. I was feeling like a celebrity. Everyone was shaking hand and congratulating. I was on cloud nine.
All I wanted was to run away to tell my parents that they could finally be proud of me, to tell Abhinav that we had done it.
People were running after us. This is a tradition. They beat you with belts on happy occasions. Happier the moment, harder you’re beaten up. You can hide buried treasure or a winning poker hand. But you can’t hide the true happiness. It was all around. Between shaking dad’s voice soaked half in tears & half in happiness and mine out of control flowing emotions, I was feeling no pain.
I was bombarded with messages, mails and calls. For once in my life, I wanted to be alone. It was my time. I wanted to live it. I wished to freeze it. I wished to hold it. Christmas had arrived little early for me and Santa had bestowed on me. It was the best birthday gift I could imagine. It was a magic. They say, all magic comes with a price. And I think I had paid the price.
There were few awkward moments when Abhinav and I overheard things like, “Look, 32 lacs are going”, while we were wandering on college roads.
Year 2012, November
We were in news
It had been almost two months since result was announced. I was on a long vacation, sleeping at home when I got a call from placement department. They wanted a picture of me to feature on the site. Few days later, my cousin brother called me to tell that he was holding college prospectus featuring picture of me.
The diabetic sweet deal
There is nothing much to do after interviews. Scoring GPA in college was least of my interest. I wanted to learn something which could smoothen my path in company but my friends on Quora advised me not to bother. Most of my time was spent in eating, sleeping, chatting and GeeksforGeeks. I was having a word with one of my friend when he asked me if I was going to join Microsoft or GeeksforGeeks.
As usual, Sandeep and I were discussing about GeeksforGeeks, plans for its growth, revenue model etc. He asked me my thoughts about career. “Seriously, the way GeeksforGeeks is going, you might like to join full time. You can choose designation of your choice – CEO or CTO”, he proposed. This was overwhelming, a very sweet deal indeed. Sandeep’s offer was very difficult to reject. However, a lot of things were on stake. GeeksforGeeks was in very early phase. Working in it full time would render me literally poor. Microsoft was a brand even my grandfather talked about. It was really a tough choice to make. I decided to spend few years at Microsoft to learn things, to learn how stuffs work, to learn something industrial. Microsoft was changing tens of millions of lives and I wanted to be part of it.
If you ask me, whether I regret my decision today. Well, I ain’t sure. Life is made up of small moments and each moment has its own pros and cons. A choice doesn’t come with a warning sign. Sometimes, you don’t know what is going to happen. Sometimes, you don’t wanna care. Sometimes, all you wish is to live the moment. Today when I have nothing to do or when I am really pissed off at work, I think of that time. I get lost in a reverie imagining how my life would have been changed. But thinking about it won’t change a single dime of my life. Even if I join GeeksforGeeks today, it won’t be the same it was 4 years ago.
What do I feel when I look back today?
Decisions you make lead to doom or fame
I guess there is no one to blame
Sometimes you rise, sometimes you fail
But things you learn are worth a hell
There is no secret ingredient. Healthy dose of faith. Genuine commitment. Sharp focus. Hard work. Everything should be put in right proportion. I didn’t do anything different. I believed in myself and followed my passion. My life has been a roller coaster and I enjoyed the ride thoroughly. You make mistakes and you learn from them. It is part of life.
Our goal at GeeksforGeeks was to maintain quality content. Few of the readers asked for content to focus on basics. That’s how GeeksQuiz idea was born. It was Sandeep’s brainchild. I wasn’t interested much in site development. I chose to contribute to content instead.
Year 2013, January 28
The most awaited offer letter
I don’t know why most of the comms Microsoft did, happened to be in the early morning. The HR inboxed me the most anticipated offer letter. Three days after we received offer letter, they shot another mail inviting us to an event “New Hire’s Day”. It was exhilarating and hell lot of fun. I have documented my experience here: My experience of New Hires’s Day at Microsoft
Year 2013, Summer
What can be more difficult than solving a problem? Well, creating a problem. IIIT-Bhubaneswar had a tech fest in summer. They asked GeeksforGeeks to organize the coding contest. Designing problems was very challenging. I had never thought from the perspective of being on the other side of the table. There were many things to be taken care. Problem should be new. Domain of problems should be proportionally distributed in different difficulty levels. But how do you decide the difficulty level? If you’re the problem setter, you happen to know the solution. Does that mean the problem would be that trivial for others as well? Have you ever wondered how they categorize difficulty level of Sudoku? I will leave you keep thinking. It was a different experience altogether.
They had also asked for a guest lecture in the college. Since I was in the town, Sandeep asked me if I wanted to go. Sadly, I was not a good public speaker. One of my part wanted to go, but the other was pulling me back due to my fear of stage. Unfortunately, my other part won the battle and I ended up watching Batman.
Before I dive into bragging about being a Microsoftie and what is life at Microsoft all about, let me ride you through my journey in life so far, my thoughts as a child which inspired and helped me to become what I’m today, choices I made at various stages of my life, which I sometimes adore, sometimes regret. But if you ask me, “Am I happy today?” I would probably say “Yes”. Sometimes life is not all about making choices. Sometimes choices can go all wrong. But what matters is how you react to those wrong choices. Whether you keep on cursing God or whoever played a role in making that decision or you bounce back by working continuously until you make it right. Failures are important. It tells you that you are not invincible. It tells you that you are human. It’s okay to fail. Harder you fail, harder you work and sweeter the success is.
It was a hot Tuesday noon. Sun was at its peak and I was almost sleeping. A question suddenly broke my reverie.
“What do you want to become when you grow up?”
This question was asked by my class teacher Nripesh Sir. He was expecting each of us sitting in the classroom to have a goal in life. Some said doctor, some lawyer, some engineer, some even said a SOFTWARE engineer. I didn’t know what a software engineer work was. All I had heard was Bill Gates. Thanks to the local regional newspapers that keep on publishing about him. That he is the richest man and he founded Microsoft. And Microsoft develops software. So I was under impression that if I wanted to become rich, the formula was to be a software engineer. I always day dreamed about becoming a Microsoft engineer. Little did I know that once an imagination would become a reality.
An innocent small town boy who had never left home except with parents and siblings on summer holidays, was so much excited to explore the outside world although he had no clue how he would survive alone. Like many kids, he had heard about IIT being a very prestigious college. He was sure that his life would be set if he scored a good rank. But how? He had failed twice in Bansal Classes(an institute offering IIT entrance preparation) entrance test. He started having very bad feelings about his capabilities. His mother always praised how much intelligent he was since his very childhood. May be academics and competitions are two very different things. Needless to say, his parents had very high hopes from him. Somehow he got scholarship in Narayana IIT Academy. He was going to study in the capital city of the country, New Delhi.
Year 2008, May 30
Our small town boy was no more that innocent and childish. He had learned many things in life. Unfortunately, not that thing for which he had spent his parents’ hard earned money. All thanks to the world of internet he had been exposed to and 100% bonus offer in cyber cafes. He had just passed higher education, failed to score any rank in IIT-JEE and ready to face taunts of his relatives and neighbors.
Year 2008, June onward
Everything seemed to be lost in his life. He had lost an important match. But even Sachin Tendulkar sometimes doesn’t play well when it’s not his day. May be he should give another try. In the last quarter of the year, Super 30 conducted its test. It was a huge opportunity for him to bounce back. After all, his cousin brother was pursuing bachelors from IIT – KGP and he had too learned the tricks in Super 30. Months of patience and four rounds of test paid off. He had made it. People around him had started recognizing his potential.
He didn’t join Super 30. He knew life won’t be easy there. He would miss delicious cuisines. And if he was able to crack Super 30 which gives near to 100% success rate, why can’t he crack IIT entrance on his own?
Note: Super 30 is a non-profit organization providing free food and education.
Fast forward 7 years, It was time to choose a college which would shape my career and hence my life. A 4 years of time was to decide my next 40 years of life. Sadly, I didn’t have any good option. I was in waiting list in JEE and couldn’t score a rank in AIEEE which could secure me a good college. I and my friend Kanhaiya were just scrolling through the placement records of colleges in our league. I was able to score 3 digit ranks in SRM, CUSAT and KIIT. And the one news locked our tired eyes –
“MICROSOFT selects eight students from KIIT”
and the content highlighted –
“Microsoft personnel making round the country’s premier institutions for hunting the talents to join them, were ecstatic finding the fountain of talent in KIIT”. The news is below:
That was it. If Microsoft visits a college, it couldn’t be that bad. We had locked our choice. After all, this is what we wanted all along. This is what I wanted all my life.
Even 2008 recession couldn’t affect my decision. My choice was so BOLD that even though people around me were opting for non-computer science streams, I was stuck with my decision of moving ahead with CSE in the counselling. Funny to hear, I was the first one (All India Rank 435) to register for CSE stream.
They say, “It’s never easy to get what you want. And if it’s easy, your goal is not BIG enough”. For a guy who was seeing a laptop first time, it wasn’t easy to get adapted to coding and problem solving world. It was frustrating, challenging and no less than a nightmare. When his friends used to code a simple problem in 10 minutes through 3 different approaches, he struggled hard for 3 hours for the easiest approach. All he knew was if he wanted to be the best, he had to work fucking hard and manage his time smartly.
Partners in crime
It was a long train journey. There is nothing much to do when you are traveling with a friend who is crazy for Physics, Electronics and Probability. That crazy friend was Aakash, my roomie. Since third semester was about to commence, there were many known faces traveling in the same train. Aakash introduced me to a guy named Abhinav. He was the guy I had heard about from few of my friends. He was famous for applying his learnings to create small games.
We were alike in some respects, no prior coding background, big foodie and fan of TV series Crime Patrol. The only difference was that I wanted to build something, and he was already doing it. I was hugely inspired from what he was doing. From that moment onwards, we developed few projects together, studied together and prepared for companies together.
It was the time when I always had a feeling of something burning inside me. It was passion. Thanks to my DAA teacher Biswajeet Sahoo Sir and C++ teacher Narayan Sir who exposed me to the beautiful world of Algorithms and problem solving. I never looked back. I kept on practicing from various online sources. It was the time when I came across GeeksforGeeks, an online portal created by geek for geeks. I just fell in love with the way it presented the problems. The more time I invested into it, the more I learnt. No other teacher had taught me that many things than GFG did.
First milestone towards success
Harry… Harry… Someone was calling me. Oh! I had just slept. Aakash wanted to tell that a college in Bhubaneswar was organizing a coding competition. Many of our friends had already left for registration. Somewhere between awake and asleep, I agreed to give it a try. We registered ourselves with team name “e-Programmers”. There were around 200 teams participating in the contest and best 2 teams were to be declared winners. 5 hours of coding and hell lot of frustration, we had lost our hopes. Already 4 teams had left with smiley faces which meant we were done.
The next day we got call from Silicon Institute to participate in the result announcement ceremony. And then they announced… Whoa! That feeling was beyond words. Abhinav’s team came first and mine second. Yes, we were the best two performers.
Once I was looking for a summer internship. Theory of Computation teacher Vidyadhar Sir announced in the classroom that there was an opening for Natural Language Processing intern in IIIT Hyderabad. So if anyone was interested, (s)he could contact him for further details. Well I met him post class hours asking many questions related to intern position and his views about the importance of that in my career. He suggested me to hunt down this intern offer only when my interest lied in higher studies and research field. “Why do you not prepare for something that looks for guys with strong coding and problem solving skills?”, he asked. Like Microsoft and Google.
Moderator at GeeksforGeeks
Today when I look back over my life, I just can’t believe that a person can be that insane to chat 10 hours a day and that too only technical stuffs. Yes, this can happen when two crazy people with similar mindset meet. While solving problems on GeeksforGeeks, there were few articles that were so well compiled and informed that I just couldn’t help myself but to contact that guy. I shot him a message on Facebook and this is where we connected. I was very active on GeeksforGeeks. And he was kinda impressed with my thoughts and approaches of solving problems. Our discussion trails were everywhere – Facebook, Gmail, Quora, CareerCup, GeeksforGeeks, StackOverflow. I had never met anyone with so much knowledge, zeal and thirst for coding & problem solving despite the fact that he was an Electronics graduate. For him, problem solving was a time pass. My passion grew with time. Every discussion with him reminded me how little I knew and I needed to manage time smartly and keep my learning curve steep. I started practicing insanely on GeeksforGeeks, CareerCup, LeetCode, SPOJ and other online portals. Few problems took me weeks to solve. I solved problems that were pending since more than 6 months in the discussion forum. That’s when it all started. My solutions started publishing as GFG articles, one after the other.
GeeksforGeeks was growing fast. They were looking for someone who could participate actively in the discussion forum, point out improvements in guest articles and write unique content to enrich the site.
One evening, I got a mail from Sandeep, GFG founder asking if I would like to join the team. I couldn’t think of a single reason why I shouldn’t. GFG was already impacting many lives and it could help me to connect with other geeks. Although it was a non-profit initiative, I was willing to join. I was just 22 and it was the best time to learn and grow. In short, it was a time when my thoughts were not aligned with Joker’s.
But, it was so good to see my name on GFG About us page:
Placement talks were all around the hostel corridors and hallways. Even scorching hot summer couldn’t lessen the spirit. Everyone seemed crazy.
15th August, yes that’s when first company visited our campus. Aricent was kind of mass recruiter, but better than mass recruiters like TCS, Wipro. At least this is what we were told. They conducted a written test, a group discussion, a technical interview lasting 45 minutes followed by an HR interview of 25 minutes. Written test had aptitude, English comprehension, vocab, technical each with individual sectional cut off and individual time allocation. They asked almost everything (C, C++, OS, DBMS, Digital Electronics, Microprocessors, Comp. Org. & Architecture and DS) in technical interview. I think their goal was to cover breadth and depth, because when I thought I was doing well in DS, my interview was over. Final result was announced on 17th August. 151 had made it.
It felt good that I had somehow made it to Aricent. I was skeptical at first because of two reasons.
I didn’t want to work in a networking based company. Networking was never my cup of tea not because I couldn’t learn it, but because I didn’t like it
I had demonstrated good coding and DS skills. I was asked twice that why am I not targeting big MNCs like Microsoft and Google. It was very likely that I would NOT join Aricent if I get a better offer
Although Aricent was a good start, it offered very less salary. It could never fulfill my necessities. With 6 lacs of education loan on head and frequent reminders from bank manager to keep sanction letter always in pocket in case it helps me to concentrate whenever I lose focus, I needed to do better. You can say the reason being my passion in coding and problem solving. But the truth was that I had to pay 21k per month to the bank. This scared me more than anything that with so less salary in hand, how was I going to survive in inflated cities. I was simply not happy with Aricent.
One fine evening, there was a notice from placement department. Microsoft was to conduct first round written test on 1st September. It was perhaps the biggest news for the college and aspirants alike. Everyone was buzzing about it. Why shouldn’t they? After all, Microsoft was visiting the campus after 5 years. Nothing could make me happier. The time had come to showcase my hard work and my experience which I had garnered through the years. Lady luck had finally shone upon me.