Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

How to make more money as a programmer (coding bootcamp edition)

41 vues

Publié le

Pre-order the book at $29 instead of $39: https://gumroad.com/l/cdrft

Talk:
https://www.youtube.com/watch?v=-7eDGHb6LmQ&feature=youtu.be

Questions? Say hi:
Email: iwan@coderfit.com
twitter.com/iwangulenko
linkedin.com/in/iwan-gulenko

Publié dans : Formation
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

How to make more money as a programmer (coding bootcamp edition)

  1. 1. Make more money as a programmer (Coding bootcamp edition) Slides: tinyurl.com/MakeMoreAsaCoder Book: “Coderfit: Make more money as a programmer” https://gumroad.com/l/cdrft/propulsion (discounted for propulsion students until Sunday)
  2. 2. Twitter: @iwangulenko Email: iwan@gulenko.ch whoami • BSc./MSc. in computer science from TU Munich • Worked 3 years as Python and Javascript developer • Since 2 years running coderfit.com, a tech recruitment consultancy
  3. 3. Twitter: @iwangulenko Email: iwan@gulenko.ch Programming is a dream job - You fight mainly against a deterministic machine, like lifting weights, performance depends on you - Focused work, hence more happiness - This job has the best stress-to-responsibility-to-salary ratio - High prestige
  4. 4. Twitter: @iwangulenko Email: iwan@gulenko.ch What you typically learn as a programmer - General concepts ("what happens if you type something in Google") - Language specifics: Commands ("if, else, map, reduce..."), concepts: how state management in redux works - Discipline: Good variable naming, short functions, correct abstractions - Feeling for trends and quality, understanding the difference between ‘just working’ and good software
  5. 5. Twitter: @iwangulenko Email: iwan@gulenko.ch The T-Shaped developer Become a T-shaped developer: Have a broad range of skills with a deep expertise in one. https://www.verozen.co.uk/2017/05/t-shaped-employee/
  6. 6. Twitter: @iwangulenko Email: iwan@gulenko.ch Frontend or backend? - Frontend is the most ‘liquid’ market: Many jobs, people changing jobs more frequently, less onboarding, things change quicker, better chances as boot camp graduate. Good curriculum to practice frontend questions: https://github.com/h5bp/Front-end-Developer-Interview-Qu estions - Backend has the reputation of being “more rigorous development”, tasks usually more company specific (longer onboarding). Algorithmic coding challenges used here to assess candidates.
  7. 7. Twitter: @iwangulenko Email: iwan@gulenko.ch What you typically never learn but should learn as a programmer
  8. 8. Twitter: @iwangulenko Email: iwan@gulenko.ch Usual structure of an interview process - Phone screen - Coding task (live or ‘homework’) - Onsite (half a) day - Offer (negotiation)
  9. 9. Twitter: @iwangulenko Email: iwan@gulenko.ch Why programmers don’t get jobs https://medium.com/@iwaninzurich/why-software-engineers-dont-get-jobs-th ree-horror-stories-77fd1ae3b875 Horror-Story 1: Candidate rejected because of “wrong” framework Horror-Story 2: Ex-Googler ALMOST rejected for not knowing the Bayesian formula by heart Horror-Story 3: Candidate was rejected because he was better than the interviewer Horror story 4: Programmer was FORGOTTEN by HR
  10. 10. Twitter: @iwangulenko Email: iwan@gulenko.ch 5 misconceptions about interviewing 1. Importance of degree: “A computer science degree means someone is a good programmer and that is why companies want to hire these people.“ (No: It merely signals that you can finish stuff) 2. Duration of an interview process: “They didn't answer my email for one week, that means they are not interested. (No: Things get lost, business is chaotic almost everywhere) 3. How Screening works “They probably took 15-20 min or so to read my CV/study my Github/projects” (No: If you are lucky, they took 20 sec instead of 5s; some interviewers actually never read CVs but just call you and ask 'tell me about a thing you build’. Try answer with the schema of Situation, Task, Action, Result)
  11. 11. Twitter: @iwangulenko Email: iwan@gulenko.ch “Did you check my CV?” - 10s must be enough - Help understand what thing you did in your job, which stack you used, and what you archived. A workshop: https://youtu.be/5hsTnTeZk-k?t=676 - Also a good blogpost, takeaway: write bulletpoints-style, if possible in the format of *accomplished X measured by Y by crafting Z.*
  12. 12. Twitter: @iwangulenko Email: iwan@gulenko.ch Bad CV Improved CV
  13. 13. Twitter: @iwangulenko Email: iwan@gulenko.ch “Did you check my Github?” - 5s must be enough
  14. 14. Twitter: @iwangulenko Email: iwan@gulenko.ch Think what could be relevant, get to the point fast : Interviewer: Tell us about yourself Candidate: .... Think in the pattern: “Situation, Task, Action, Result”
  15. 15. Twitter: @iwangulenko Email: iwan@gulenko.ch 5 misconceptions about interviewing 1. Importance of degree: “A computer science degree means someone is a good programmer and that is why companies want to hire these people.“ (No: It merely signals that you can finish stuff) 2. Duration of an interview process: “They didn't answer my email for one week, that means they are not interested. (No: Things get lost, business is chaotic almost everywhere) 3. How Screening works “They probably took 15-20 min or so to read my CV/study my Github/projects” (No: If you are lucky, they took 20 sec instead of 5s; some interviewers actually never read CVs but just call you and ask 'tell me about a thing you build’. Try answer with the schema of Situation, Task, Action, Result) 4. Nothing personal: “If they rejected me I can never apply there again.” (No: Unlike dating that is usually not a problem, there must be some learning trajectory though) 5. The best fit gets the job: “Recruitment is a rigorous process where the person who fits best gets the job.” (No: Recruitment is a mess, no one wants to do it (right), people think it is rigorous like science but it is chaotic and random like dating)
  16. 16. Twitter: @iwangulenko Email: iwan@gulenko.ch Why interviewing is worse than dating - Interviewing is WORSE than dating, no one knows what is the right thing to do in the first date, no one knows how to assess programmers. - It is worse than dating because in dating at least people assume it is subjective, in interviewing people think it is very meritocratic and objective, it is not. - Scores and assessments are often just data generated after the fact/to appease management/justify one’s feelings. “Science” behind most assessments is hand waving (even IQ tests medium.com/incerto/iq-is-largely-a-pseudoscientific-swindle-f13 1c101ba39)
  17. 17. Twitter: @iwangulenko Email: iwan@gulenko.ch Why it is important to practice interviewing Interviewing skills have to be trained, this is strongly underestimated (more so by seniors) - Practise: github.com/h5bp/Front-end-Developer-Interview-Questions github.com/latestalexey/awesome-interview-questions#pyth on
  18. 18. Twitter: @iwangulenko Email: iwan@gulenko.ch 7 things to do to stand out 1. Follow and research companies on Github that use Javascript (386) or Python (223). 2. Follow companies/programmers where you want to work on Twitter, dare to comment on their tweets. 3. Go to events and conferences, (e.g., Europython). 4. Record a video how you code, add a feature, test or review code. (loom.com for easy recording, kapwing.com to 2x speed) 5. Sell your ‘outsider’/non-tech background as a strength, not a weakness. 6. Over-prepare: Research what the company is doing, tech stack, research background of you interview partners. Always. 7. Always ask for permission: “May I ask a question now or later?”, “Can I assume inputs are only numbers?
  19. 19. Twitter: @iwangulenko Email: iwan@gulenko.ch Prepare to avoid regret - Interviewers want to find out your strengths, not your weaknesses. (Everyone has blind spots.) - You shouldn’t be too bad at interviewing but also not ‘too good’. If you are too good, people will assume you: - Invest more time in interviews than in coding/working. - Heard the questions before, so they didn’t really test you. (If you heard a question before, be honest!)
  20. 20. Twitter: @iwangulenko Email: iwan@gulenko.ch 5 salary negotiation tips https://drive.google.com/file/d/1HpCRLsoTXqM9yI3NOkrD----ayrX8zT-/view Managers negotiate salary several times a week whereas applicants do this maybe once in years. 1. Try not to discuss compensation upfront. 2. It they insist: Say that you feel uncomfortable talking about money early on because you want to first find out how you can add value to the firm. 3. Don't disclose your current salary. 4. Be silent when you are given a number. 5. Got an offer? Great! Always ask for more. (If you don’t ask for it, you won’t get it!)
  21. 21. Twitter: @iwangulenko Email: iwan@gulenko.ch Programming career jumps Salary range Usual tenure Function Intern 40-60k 3-6 months Delivers working functions Junior 80k-90k 1-2 years Delivers simple, working apps Mid-level 90-105k 1-5 years Delivers working software Senior >120k > 4 years Gets the difference btw. working and good software Lead >130k > 5 years Takes ownership of people or software CTO >150k, theoretically unlimited > 7 years Takes ownership of tech in a firm
  22. 22. Twitter: @iwangulenko Email: iwan@gulenko.ch 4 types of companies Tech is profit centerTech is cost center Project- based Product- based C AD B
  23. 23. Twitter: @iwangulenko Email: iwan@gulenko.ch How to stay relevant in your career
  24. 24. Twitter: @iwangulenko Email: iwan@gulenko.ch Your career: The barbell strategy See book “Skin in the Game” - Nassim Taleb Day job: Low probability of failure Other things you do: - High payoff with low probability - Twitter, meetups, side projects with high optionality
  25. 25. Twitter: @iwangulenko Email: iwan@gulenko.ch Your career: Convex vs. concave barbell strategy Day job: Low probability of failure but big impact of failure Other things: - High payoff with low probability - Tinkering, trial and error with little downside slideshare.net/rodrigoy/leading-the-antifragile-tribe
  26. 26. Twitter: @iwangulenko Email: iwan@gulenko.ch Your career: Concave vs. convex barbell strategy slideshare.net/rodrigoy/leading-the-antifragile-tribe (e.g., you are fired) (e.g., a successful startup) Concave Convex
  27. 27. Twitter: @iwangulenko Email: iwan@gulenko.ch Q&A Slides: tinyurl.com/MakeMoreAsaCoder Book: “Coderfit: Make more money as a programmer” https://gumroad.com/l/cdrft/propulsion (discounted for propulsion students until Sunday)

×