56
Tips to succeed in software development career Being passionate programmer Edwin Cruz [email protected]

Passionate Programmer

Embed Size (px)

Citation preview

Page 1: Passionate Programmer

Tips to succeed in software development career

Being passionate programmer

Edwin Cruz

[email protected]

Page 2: Passionate Programmer

Passion vs Obsession

• People with harmonious passion have the ability to disconnect when work is over, easily transitioning into their lives outside of the office. Obsessive people don't have that ability

Page 3: Passionate Programmer

Look back to your career history, has it been remarkable?

Page 4: Passionate Programmer

Are you a programmer by coincidence?

• How did you get to your first job?

• Was it what you wanted?

• Did you succeed?

Page 5: Passionate Programmer

Did you fit into the business?

Page 6: Passionate Programmer

You can't help the business until you know how it works

Page 7: Passionate Programmer

The goal of every single business is to make money, it's not about love.

Page 8: Passionate Programmer

Just a programmer vs business driven developer

Page 9: Passionate Programmer

How can I understand the business

Page 10: Passionate Programmer

What is the most common problem?

Page 11: Passionate Programmer

so….If it is all about career plan, how can I plan my own?

Page 12: Passionate Programmer

Choosing your market: Risk vs Reward

Page 13: Passionate Programmer

Plan your career, example

• Analyze technologies

– Cutting edge

– Stables or Conservatives

– The ones in their sunset

Page 14: Passionate Programmer

Research current market

Page 15: Passionate Programmer

Invest on Learning!

• "don’t ask to be taught—go learn for yourself."

Page 16: Passionate Programmer

Finding a Mentor

• Asking is not a sign of weakness

• Follow Alpha Geeks

Page 17: Passionate Programmer

Being a Mentor

• Learn by teaching

• The only folkswho avoid being noobs are folks who never do anything new

Page 18: Passionate Programmer

Get into the social networking movement!

Get out of your room, don't be afraid to meet the pros!

Page 19: Passionate Programmer

The most important part: always practice

Page 20: Passionate Programmer

Why do I have to invest too much in practicing?

• You could be part of:

– a lot of people that do the work

– fast people that do the work

– smart people that automate the work

Page 21: Passionate Programmer

Practice your dusty skills, example, how often do you use regular

expressions?

Page 22: Passionate Programmer

Want to practice by challenges ?

• www.topcoder.com

• www.projecteuler.net

• www.puzzlenode.com

Page 23: Passionate Programmer

Want to practice by market?

• Go and solve recruiting challenges

Page 24: Passionate Programmer

Want to practice with real world wide problems?

• Go and fix bugs in open source projects• Fork

• Learn

• Fix

• Pull request

• Have a beer

Page 25: Passionate Programmer

While practicing, respect methodologies!

Page 26: Passionate Programmer

If you can't do the process, you can't build products

Page 27: Passionate Programmer

Specializing does not mean not knowing about other things

Page 28: Passionate Programmer

Don’t reinvent the wheel, learn and implement Design Patterns

Page 29: Passionate Programmer

Be the worst!, but dont do it intentionally x)

Page 30: Passionate Programmer

Being ahead: Mind reader, is it really possible?

Page 31: Passionate Programmer

Track accomplishments, do your managers know about it?

Page 32: Passionate Programmer

You're not as special as you think“I'll show them how valuable I am,

they need me!”

Page 33: Passionate Programmer

How valuable is your time?

Page 34: Passionate Programmer

Quiz, Try to remember when you came up with the most ingenious, creative

and impromptu solution

Page 35: Passionate Programmer

Being Honest, failing well: finding errors early and often is a good sign of

what the health of software development will be

Page 36: Passionate Programmer

The path destined to fail: Saying "Yes" to everything

You need to sleep!

Page 37: Passionate Programmer

Practice your communication skills, are your clients afraid of you?

Page 38: Passionate Programmer

What about "GrAmMaraNdspelLinG"?

Page 39: Passionate Programmer

Let the world know about you

• What would be better than a good resume when applying for a job?

Page 40: Passionate Programmer

Google never forgets!

Page 41: Passionate Programmer

Want to be the best programmer? Manage panic

Page 42: Passionate Programmer

Bored people quit

Page 43: Passionate Programmer

Don't focus in finishing your project, focus on doing well your project

"don't finish your ideas, release them" - John Lasseter

Page 44: Passionate Programmer

Computing power doubles every eighteen months

Page 45: Passionate Programmer

Top ten developer qualities

1.- Loves To Code

Page 46: Passionate Programmer

Top then developer qualities

2.-Gets Things Done

Page 47: Passionate Programmer

Top then developer qualities

3.- Continuously Refactors Code

Page 48: Passionate Programmer

Top then developer qualities

4.- Uses Design Patterns

Page 49: Passionate Programmer

Top then developer qualities

5.- Writes Tests

Page 50: Passionate Programmer

Top then developer qualities

6.- Leverages Existing Code

Page 51: Passionate Programmer

Top then developer qualities

7.- Focuses on Usability

Page 52: Passionate Programmer

Top then developer qualities

8.- Writes Maintainable Code

Page 53: Passionate Programmer

Top then developer qualities

9.-Can Code in Any Language

Page 54: Passionate Programmer

Top then developer qualities

10.- Knows Basic Computer Science

Page 55: Passionate Programmer

Have fun, Software development is fun!

Page 56: Passionate Programmer

Thanks!

Edwin Cruz [email protected]@twitter

gmailgithub

everywhere!

• Passionate Programmer

• Clean Coder

• The Art of Agile Development

• Design Patterns

• Anti Patterns

• Management