Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The New Engineer's Survival Guide

The New Engineer's Survival Guide

This talk was given to the first cohort of Launch Academy in Boston, MA on May 9, 2013 and again to the second cohort on September 11, 2013. It was meant to serve as both a precursor of things to come in your engineering career and an encouraging, inspirational talk.

Johnny Boursiquot

May 09, 2013
Tweet

More Decks by Johnny Boursiquot

Other Decks in Programming

Transcript

  1. More Specifically... Johnny Boursiquot (boar-cee-co) Partner, Technology Director and Software

    Architect at MAARK (yes, all of that...on a business card) Have had various roles and responsibilities as both it and I continued to evolve but always have hands in code--important to me Married, 3 daughters, generally a nice guy :) Wednesday, September 11, 13 I’ve been with MAARK longer then most marriages last
  2. Perfect Timing Wednesday, September 11, 13 You’re entering the market

    at a time where demand for your skill set is high. But that’s not enough.
  3. Not all of your challenges will be technical. Wednesday, September

    11, 13 The things you face on a day-to-day basis (short deadlines, project (micro) managers, team members you don’t particularly get along well with, things outside of your control), you must be able to overcome them.
  4. It’s not going to be what you think. Wednesday, September

    11, 13 Because, you don’t know what you don’t know.
  5. Anecdotes. Real Ones. Wednesday, September 11, 13 Throughout this talk,

    I will tell you stories. Stories about how I’ve come to adapt to handle these factors, stories of some of my friends that I’ve learned from and what you can learn from my and their mistakes.
  6. Advice. Suggestions. Wednesday, September 11, 13 I’ll give you advice

    and suggestions, but they’re just that. What works for me won’t always work for you but you’ll have a baseline from which to adapt. These things won’t be a surprise to you when you encounter them for the first time.
  7. Practical Philosophical Wednesday, September 11, 13 Our slides will progress

    from the practical to the philosophical. You’ll probably know when we start to go to the philosophical :)
  8. Learn the business domain in which you work. Wednesday, September

    11, 13 This not only make you good in that particular domain, it will also allow you to more clearly understand your value to the business and be able to articulate it.
  9. Learn to think like a manager. Wednesday, September 11, 13

    Learn to think like a manager. They tend to define, plan and execute. Remind you of any particular process? Yes, Waterfall. Their priorities are the “what” (requirements, features), the “when” (timelines, milestones) and the “who” (employees, contractors, external assets, etc aka “resources”).
  10. Hitting roadblocks on a project? Don't go to your manager

    without potential solutions or alternatives. Wednesday, September 11, 13 As an engineer, YOU are responsible for providing solutions, not your manager or her manager in turn. As time goes on and as you climb the proverbial latter, this will become increasingly important.
  11. “Agile” is not always an option, learn to be agile.

    Wednesday, September 11, 13 Can you work in an environment not suited for an agile process? Can you adapt to how other people work?
  12. Learn to argue. Be convincing. Wednesday, September 11, 13 Use

    facts, not feelings, to back up your arguments and convince your peers or your boss to do things the way you’re proposing.
  13. Learn how to negotiate. Wednesday, September 11, 13 Life is

    a negotiation. In order for both parties to agree with and be happy with a decision, they must feel like they each gave up something and received something else of value in return. Do not attempt to “win” negotiations. Compromise is the name of the game here.
  14. Say what you mean and mean what you say. Wednesday,

    September 11, 13 [the “Just Kidding” story] - When others can’t rely on the things you say, distrust sets in. Nobody takes you seriously.
  15. Do what you say you will do. Raise a flag

    early if you can’t. Wednesday, September 11, 13 There are cases when despite your best efforts, you can’t deliver. Articulate those reasons and do so prior to running out of time. Given enough room, you can find alternatives and compromises.
  16. Know when to say no. Wednesday, September 11, 13 That

    can be a difficult thing to say to people, especially when we’re so trained to say “yes”, to please others, to conform. Once you learn when to say “no” and back it up with valid and supporting logic, it frees you from having to say “yes” when you feel that you should really be saying “no.”
  17. Mistakes are inevitable, how you learn from them is what

    makes you remarkable. Wednesday, September 11, 13 If you’re genuinely interested in getting better and show the effort, mistakes are easily forgiven. If you’re not, there won’t be a lot of patience for you.
  18. Learn to appreciate criticism. No criticism is a sign of

    apathy. Wednesday, September 11, 13 If nobody ever tells you how you can improve, you need to find a new job. Unless, of course, you’re already perfect :)
  19. Learn to identify trolls, then ignore them. Wednesday, September 11,

    13 These are the people who just want nothing more than to derail you, whether for fun or out of malice. Learn to recognize and ignore them.
  20. You need about 10k hours to master anything. Keep that

    in mind. Wednesday, September 11, 13 Feel like switching careers? Be prepared to start from the bottom again. Learn instead to make lateral moves. Bring your existing domain knowledge with you to another field and leverage it there. [the “Friend From Healthcare” story]
  21. Generalist or Specialist? Wednesday, September 11, 13 You will be

    faced with this choice pretty soon in your career. Nothing wrong with either one but there’s a price to pay either way. Generalists are more useful in small teams because they can wear many hats. Specialists are more useful in large teams where they serve as precision instruments.
  22. Strive to remain focused. Wednesday, September 11, 13 There will

    be a lot coming at you. New frameworks, new languages, new ways of doing things, etc, etc. Find the common thread and stay with it. Learn to ignore some of the shiny new things that are marginally beneficial and recognize those that are truly valuable to your career.
  23. Learn to recognize trends. Wednesday, September 11, 13 Industry news,

    blogs, disruptive startups, new industries, changes in existing industries, keep an eye on all of that. Yes, it will be difficult and consume LOTS of your time. You will need discipline to not spend your entire life just reading and “keeping up” with others who seem to have an endless amount of time on their hands.
  24. Learn to think strategically, tactical comes easy. Wednesday, September 11,

    13 You are the tactical arm of an organization. Your mandate is to implement. Yet, as you mature, more strategic decision responsibilities will be handed to you. Until then, know that the strategic thinking has already been for you - like it or not. See http://www.inc.com/paul- schoemaker/6-habits-of-strategic-thinkers.html to grasp “strategic thinking” and how to develop that skill.
  25. Set goals and track milestones to achieve them. Wednesday, September

    11, 13 This is for personal achievements. You may need a visual way of representing your goals. Look up “personal kanban” and check out Trello as a means of doing just that. It works for me :)
  26. Learn what makes you productive and spend your life mastering

    it. Wednesday, September 11, 13 Extended periods of true productivity are hard to come by. Breaks in your day or week that disrupt your thinking are common. Each of us has a mechanism by which we can focus despite these breaks. Find yours. Mine? I change where I sit at least once a week. A physical change in perspective so to speak.
  27. Have patience with others. Wednesday, September 11, 13 Even as

    Junior devs, you will find yourself in teaching positions or have teaching moments. Show patience with people and they will be grateful. You will in tern get a funny feeling in your belly and endorphins in your brain as a reward :)
  28. Have patience with yourself. Wednesday, September 11, 13 Difficulty grasping

    a problem? Give it time. For me, sleeping on a hard problem usually reveals the answer or part of it in the morning. The mind has a funny way of working that way.
  29. Learn to recognize and walk away from bad situations. Wednesday,

    September 11, 13 That could be a job that does not fit you well, a coworker you just can’t get along with, etc. If the situation seems untenable, often the right solution is the simplest. Walk away.
  30. The grass is greener where you water it. Wednesday, September

    11, 13 Thinking about leaving your current position or job ‘cause you just hate your job? Maybe the problem’s not with the job. What have you done to try and improve the situation?
  31. Be the change you seek. Wednesday, September 11, 13 Want

    to see a better culture at work, start by doing the things you’d of like to be able to do if the culture was better. Others will follow.
  32. Be genuine. When you're fake, people know it, even if

    they don't tell you. Wednesday, September 11, 13 Beware if they never tell you. That’s apathy and you want to avoid that too.
  33. Be nice to people, you will experience fewer barriers at

    work (and in life). Wednesday, September 11, 13
  34. Find a mentor who will stick with you for as

    long as possible. Wednesday, September 11, 13 Those that stick with you get to see you grow as a developer and are in the best position to advise you based on what they think fits you best.