Software Development Careers: What, Why, and How? This evolving presentation was initially given to the 3rd year B.Tech. students at JIIT. It is useful for all engineering and computing students. It is being frequently updated in view of the newer information and insights. Published on: 13 rd June, 2015 Last update: 24 th July, 2015 Sanjay Goel JIIT, Noida, India, 2015
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Software Development Careers:
What, Why, and How?
This evolving presentation was initially given to the 3rd year B.Tech. students at JIIT.
It is useful for all engineering and computing students.
It is being frequently updated in view of the newer information and insights.
Published on: 13rd June, 2015
Last update: 24th July, 2015
Sanjay Goel
JIIT, Noida, India, 2015
Ecosystem:
Is something Changing Drastically?
Growing Indian Economy
India is the bright spot in the global landscape - IMF
• Pravesh Verma - SAP (Have a patent on his name too)
• Aditya Kotari - SpiderCloud ( works on wireless technology)
• Neelima B - Pegasystems (Predictive Technology)
• Karan Bhatia - Marketing head - Transtutors
• Nakul Saxena - Project Manager Ciber.
• Deepak K - Researcher, Infosys Lab.
• Robin Singh – Texas Instruments (FPGA Programming)
• Abhishek Singh - Researcher in Juniper Technology
• Ankit Garg - Delhi - Starting his own company on Software Educational tool.
• Setu Garg/Chirag/Swaroop - CEO Woikr
• Ankur Jain (ECE) - Founder of Ajonit-Software (His blog on Software Testing also
makes good money for him)
Messages from few JIIT AlumniKumar Lomash, 2006, Senior Computer Scientist, Adobe, India
• I always find the quote by Dijkstra very inspiring. It keeps me focused on the
problems than the technology. "computer science is no more about computers
than astronomy is about telescopes". A true engineer should always remember
this, it has helped me single out interesting projects and problems from others
which are a distraction at best in the industry.
• Every project team has certain roles which focus on the fundamental problems
like algorithms, software design, architecture, etc. And then there are other roles
which are technology specific like which language to use, platform specifics and
technical know how. To be and remain a sound engineer one should always
focus on the former roles and challenges.
Messages from few JIIT AlumniAmal Tiwari, 2006, Lead UX Designer, InMobi, India
• Make. Share. Repeat. Given what we do for a living and the resources we have
today, it is easier to build any idea you have and share with people. Get feedback
and improve. Question convention. For HCI/Design folks, having diverse
experiences is very important in life to build world-class products at scale.
• Passion + integrity + hard work
– I can't stress enough how important it is to have all the three.
• It's good to have a purpose.
• Honesty and morals aren't just dictionary words.
• "Slog". Struggle is necessary.
• GPA stops mattering.. Eventually In reality, GPA matters for some time after
college. But in the long run, what matters is what you have done, what you have
built and where you are going. I have seen many examples of people with low GPA
doing well because they kept working hard on projects, built and launched stuff;
they were the right mix of humility and confidence.
• It's an exciting time to be a CS (or HCI) guy! Best wishes
Messages from few JIIT AlumniAnuja Sharma, 2006, PhD candidate, UTAH University
• Don't blame, don't wait. Do your best and move on with a smile! Instead of blaming the
system around you, do the best you can and move on. And do it with a smile and a sense of
challenge and responsibility. If situations give you the opportunity to compensate for
someone's limitations- do it- and do it with pride and be grateful for this chance.
• Think big and have a vision! Have a goal that is personal, intimate and has the potential of
driving you for the next 20-30 years. It doesn't have to be realistic at this point but it should
be something bigger than your personal circle of life- family, friends and career. It should be
something that challenges you and brings out the best in you. It should be your personalized
way of serving the society, the nation and the entire world.
• Expand your comfort zones! The early 20's provide the perfect platform to take risks. You
can definitely be prudent about your choices but don't sit in your comfort zone. Stretch to
learn and reach out to each other.
• 'What can I give' versus 'What am I getting'! The former would make you stronger and
reduce stress and pressure on you. This would encourage your creativity as you would
always be focused on providing solutions. This attitude would make you successful with all
ranks of people.
Messages from few JIIT AlumniAditya Kumar Singh, 2006, DeloitteI graduated in 2006 with highest on campus package and highest number of offers (3) and I
joined a semiconductor firm that was into product development. Few things I would
like to share with you all:
• Know yourself- It‟s very important for you to understand your own strengths and
weakness. Keep 2 things in mind:
– a) People judge you by what you have achieved, while you judge yourself by what
you are capable of achieving
– b) Play to your strengths and improve on your weaknesses
• Decide what you want to do. It doesn‟t matter if you want to go for higher education
later or want to make a career in a particular field.
• I might sound cliché but you should know your resume: each line of it. Also reach about
the company you are interviewing for.
• Don‟t over plan. I did not participate in the placement process of first 2 companies on
campus as my „dream company‟ was the third in the schedule. I did not even make it to
the interview of that company, was eliminated in the GD itself.
Messages from few JIIT AlumniSiddharth Batra, 2007, TwitterOne of the biggest fallacies of human life is assuming things are linear. Careers
aren‟t made by rising the same amount every year, careers are step functions, and
the advantage of being exceptional at the start of your work life will be enormous
by the end of a decade.
Find your unique path in life.
Here are the three pieces of advice, I would have liked to give myself in 2007:
1. Your time early in life is exponentially more impactful than later in life
2. To value your time earlier in life, take risks, it‟s the best time to do so.
3. Work furiously hard and be unapologetic about it. You‟ll never remember the
weekends you took off and always remembers the things you create.
If you made it this far, as a bonus piece of advice to myself, find someone who‟ll
love you for working hard and being unapologetic about it.
Messages from few JIIT Alumni
Priyank Singh, 2007, Microsoft, USA
• Even after working in the industry for so long, when it comes to
judging candidates we still go back to basic of data structures,
algorithms and designing principals. In short whatever you will study
right now it will help you in future and you will have to keep updating
yourself always.
Messages from few JIIT Alumni
Nikhil Wason, 2007, Cofounder Card back, India
• On deciding what to do in life: identifying that one activity that gives
you immense happiness even if you would not be paid for it – that‟s
what you should be pursuing!
Messages from few JIIT AlumniAngad Singh, 2009, Tech Lead, InMobi, India• The first few years of a software engineer are a critical foundation on which the
rest of the career is built. The most important thing for first 2 years of career -
LEARNING. Money or stability should be the least of your concerns right now.
• Run far away from a high paying job in a big MNC which has less than
ordinary work.
• Run far away from white collar labour jobs at the likes of mass recruiting
offshore consulting firms where you will be just used as a tiny human tool.
• This is the time to explore and adventure, you will not have the luxury later in
your career when age brings its responsibilities on your shoulders.
• Try to find a place where you get mentored, thrashed into discipline and
refined. Try to learn how "things are done" by the pros before leaping into
doing it all alone just in the beginning.
Some Final Tips
Avoid a Career in Software Development - Justin James
If
1. You'd rather be trained than self-teach
2. You like regular working hours
3. You prefer regular raises to job-hopping
4. You do not get along well with others
5. You are easily frustrated
6. You are close-minded to others' ideas
7. You are not a "details person“
8. You do not take personal pride in your work
9. You prefer to shoot first and ask questions later
10. You do not like the geek type of person
Tips for all
Spend at least 40 hrs/ week to:
1. Apply theories or concepts to practical problems or in new
situations
2. Analyze the basic elements of ideas, experiences, or
theories, such as examining a particular case or situation in
depth and considering its components
3. Synthesize and organize ideas, information, or experiences
into new, more complex interpretations and relationships
4. Judge the value of information, arguments, or methods, such
as examining how others gathered and interpreted data and
assess the soundness of their conclusions
5. Prepare research based reports integrating ideas from
various sources and concepts of different courses
Practice, Practice, Practice (Tips for Software Developers)
1. Algorithm Design
2. Prototyping
3. Code Analysis, Program Comprehension, Re-documentation
4. Application/Component Development
5. System Integration
Problem Understanding and Solving Tips for Software Developers
1. Clarify the problem
2. Identify key elements of the problem
3. Draw a picture or diagram of the problem or a relevant process or situation
4. Consider a specific example
5. Consider extreme cases
6. Visualize the problem or a relevant process or situation
7. Imagine being the problem, a key process, or the solution
8. Simulate or act out a key element of the problem
9. Change perspective
10. Consider levels and systems
11. When the problem can‟t be solved
– restate the problem
– solve some related problem that may be
• more general,
• more specific,
• more special,
• or analogous,
– solve some part of the problem
Take Risks by William Arthur Ward
• To laugh is to risk appearing the fool
To weep is to risk being called sentimental
To reach out to another is to risk involvement
• To expose feelings is to risk showing your true self
To place your ideas and your dreams before the crowd is to risk being called naïve
• To love is to risk not being loved in return
To live is to risk dying
To hope is to risk despair and,
To try is to risk failure
• But risks must be taken
The greatest risk in life is to risk nothing
The person who risks nothing... does nothing, has nothing, and becomes nothing
• He may avoid suffering and sorrow
But he simply cannot learn and feel and change and grow and love and live