• Like
Going Pro
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.



Published in Career , Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Michael Losee
  • 2. About me – Michael Losee Grew up in Layton 6 sisters, no brothers Video Games- Doom, Warcraft, Starcraft, Diablo Reading-Wheel of Time, Forgotten Realms (Drizzt!!), Sword of Truth Hardware- Custom builds, overclocking, benchmarking Teach paralyzed people to walk Aspiring Author
  • 3. My Credentials Defense Logistics Agency  Lead Systems Analyst  5 Years Experience Emagined Security  Security Consultant/Penetration Test Engineer  2 Years Experience BS Computer Science  Emphasis in Software Engineering  April 2012
  • 4. Professional Noun: A professional is a person who is paid to undertake a specialized set of tasks and to complete them for a fee.
  • 5. What makes a professional?
  • 6. Is it about looking good?
  • 7. Is it about working really hard?
  • 8. Is it about ambition?
  • 9. The Lazy Pro
  • 10. Professionalism & Mastery “I have been consistently disappointed by the quality of CS graduates. It’s not that the graduates aren’t bright or talented, it’s just that they haven’t been taught what programming is really all about… I think it is possible to get an excellent education at a university. It’s just that I also think it’s possible to wiggle yourself through the system and come out with a diploma, and not much else.” -Robert C Martin The Clean Coder 2011
  • 11. Are you in the right place? Do you love to tinker with stuff? Stuff like computers? Do you love to code?
  • 12. Can everyone learn to code? “Despite the enormous changes which have taken place since electronic computing was invented in the 1950s, some things remain stubbornly the same. In particular, most people cant learn to program: between 30% and 60% of every university computer science departments intake fail the first programming course. Experienced teachers are weary but never oblivious of this fact; brighteyed beginners who believe that the old ones must have been doing it wrong learn the truth from bitter experience; and so it has been for almost two generations, ever since the subject began in the 1960s.” ~ Jeff Atwood
  • 13. Natural Ability? “Some people do not have an aptitude for logical and critical thinking” “Just like some people are natural artists, some people are natural programmers. Some people arent natural programmers, but can become proficient with a lot of practice. Some people cant get it no matter how much or how long they practice.”http://developers.slashdot.org/story/12/09/16/1631239/can-anyone-become-a-programmer
  • 14. The Fallacy of Talent “Outliers” by Malcom Gladwell  10,000 hour rule “Talent is Overrated” by Geoff Colvin  Deliberate Practice “Mindset” by Carol Dweck  Fixed vs Growth Mindset
  • 15. Effort I Failed CS 1410 THREE times before finally passing with an A  Had to read the book cover to cover  Spent hours upon hours on assignments Currently helping two different groups at work as lead developer and architect  Re-implement a legacy Oracle Forms application as a java web application  Building a new system to replace an existing 20 year old legacy system My best programming achievement: A software contract to build a “Component Content Management System.”
  • 16. Document Generation
  • 17. Document Generation
  • 18. Principles of Coding Coding is intellectually challenging and exhausting! Your code must work. Your code must solve the problem set for you by the customer. Your code must fit well into the existing system. Your code must be readable by other programmers.
  • 19. Tips for Coding 3 AM Code Worry Code The Flow Zone Music
  • 20. Lines of Code Smallest number of lines of code > all? Code unto others and you would have others code unto you. ~Greg Anderson
  • 21. Lines of Code Any fool can write code that a computer can understand. Good programmers write code that humans can understand. ~Martin Fowler
  • 22. Make It Easy Controlling complexity is the essence of computer programming. ~Brian Kernighan
  • 23. Learn a new language XMLhttp://kousenit.wordpress.com/2008/03/12/nothing-makes-you-want-groovy-more-than-xml/
  • 24. XML in java
  • 25. XML in groovy
  • 26. Not enough sleep? Rely on the snooze button Have a hard time getting out of bed Feel sluggish in the afternoon Get sleepy in lectures or warm rooms
  • 27. Effects of Sleep Deprivation Fatigue, lethargy, lack of motivation Moodiness and irritability Reduced creativity and problem-solving skills Concentration and memory problems
  • 28. Sleeping for Dummies No caffeine after 12pm Exercise! Consider supplements like Melatonin Give yourself 30 min to an hour for your “going to bed” routine  Read  Listen to audiobooks Aim for 7.5 to 9 hours each night
  • 29. Standard interview questions What is the biggest problem you have faced on projects so far and how did you solve it? What are your biggest strengths and weaknesses? Which programming languages are you best at and what’s good and bad about those specific languages? http://www.devtich.com/interview-questions-developer/
  • 30. Technical Questions Do you know about design patterns? Which design patterns have you used, and in what situations? Explain MVC in simple terms. How would you change the format of all phone numbers in 1000 static html pages? How do you maintain aptitude and stay current with the current technologies? http://www.devtich.com/interview-questions-developer/
  • 31. Classic Interview Testing Fizzbuzz  Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz. For numbers which are multiples of both three and five print “FizzBuzz.” http://www.devtich.com/interview-questions-developer/
  • 32. Classic Interview Testing Fizzbuzz
  • 33. Interviewing Be honest – don’t be afraid to say “I don’t know” Keep preparing and interviewing until you feel confident!
  • 34. Build Your Network It’s all about networking  Corporate and third party recruiters both rely on their network Build your OWN network  http://linkedin.com/  http://softwaredev.meetup.com/cities/us/ut/ogden/  Your friend Cory
  • 35. Building My Network WSU -> Federal Summer Internship 6 Months Later:  Call from the old internship about Student Trainee position
  • 36. Building My Network Meet Cory  Full-time Security Consultant for Emagined Security  Went back to school full-time  My buddy since we were 12 years old  Cory’s Problem: • Turn down work, or teach me and split the money? 6 months later:  Job offer from Emagined
  • 37. Be this guy