how can i start and manage a career as a programmer? · • introduction to web development •...

64
How Can I Start and Manage a Career as a Programmer? Tampa Code Camp 2017 Jeff Ammons Chief Instructor Code Career Academy

Upload: others

Post on 28-May-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

How Can I Start and Manage a Career as a Programmer?

Tampa Code Camp 2017

Jeff AmmonsChief Instructor

Code Career Academy

Page 2: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Who am I?

Jeff Ammons

Microsoft MVP

Pluralsight Author

CEO/Chief Instructor at Code Career

Academy

25 Years Professional Experience in Software

Page 3: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Starting a Career as a Software DeveloperShould I? If so How??

Page 4: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Learning To Code Takes

• Basic intelligence• Logical thinking• Hard work• Smart work• Practice• Practice• Practice• Practice

Page 5: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Learning To Code Takes

• Basic intelligence• Logical thinking• Hard work• Smart work• Practice• Practice• Practice• Practice

Time

Page 6: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Learning To Code Takes

• Basic intelligence• Logical thinking• Hard work• Smart work• Practice• Practice• Practice• Practice

TimeCommitment

Page 7: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Is It Worth It?

• That Depends on YOU• If you ENJOY programming

• Then ABSOLUTELY YES

• If you only LIKE programming• Then… MAYBE

Page 8: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Programmers Earn Good Salaries

https://money.usnews.com/careers/best-jobs/software-developer

Page 9: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Programmers Earn Good Salaries

https://money.usnews.com/careers/best-jobs/software-developer/salary

Page 10: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Programmers Earn Good Salaries

https://money.usnews.com/careers/best-jobs/software-developer/salary

Page 11: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Programmers Earn Good Salaries

https://www.payscale.com/research/US/Job=Computer_Programmer/Salary/0dfffed1/Atlanta-GA

Page 12: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Programmers Earn Good Salaries

https://www.payscale.com/research/US/Job=Senior_Software_Architect/Salary

Page 13: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

You Tell Me?• Is It Worth It to YOU?

Page 14: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Awesome!How the Heck Do I Start?

Page 15: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

How Do I Get Started?

• There’s more than one path

• No path is right for everyone

• Find the path that’s right for YOU

Page 16: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Paths

• 4 Year Computer Science Degree• 2 Year Computer Programming Degree• Code Bootcamp/Intensive School• Self-study

Page 17: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

4 Year Computer Science Degree

• Takes 4 Years (at least…)• Costs between $7,000 and

$35,000 per year• $28,000 - $140,000• Private schools are MUCH more

• PLUS books, lab fees, etc.

http://www.uscollegesearch.org/blog/faq/computer-science/how-much-does-a-computer-science-school-cost

Page 18: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

2 Year Programming Degree

• Takes 2 Years (at least…)• Cost estimated at $6,700 per year

• $13,400• Gwinnett Tech

http://www.gwinnetttech.edu/netprice/

Page 19: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Bootcamp

• 8-23 weeks• $7,000 –

$20,000 total• Super hands-on!

Page 20: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Self-Study

• 2-6+ years• Totally depends on

you

• $1,000-$6,000 wild estimate…

• Who knows?

• You're on your own…

Page 21: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Which Would I Recommend?

• It Depends• Already have a degree in something?

• Bootcamp

• Fresh out of high school? Already have money for college?• 4 Year Degree

• Fresh out of high school? DON'T have money for college?• Bootcamp• 2 Year Degree

•☺Bootcamp PLUS 2 Year degree☺

Page 22: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Which Would I Recommend?

• Don't have a degree, don't have time or money for one, but willing to work really hard to get ahead?

• Bootcamp

• Learn best on your own?• Self-Study with Mentoring

• NOTE!!!!• No matter what else you choose, you WILL self-study for the rest of your

career as technology changes!

Page 23: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

A Different Opinion

https://medium.com/javascript-scene/want-to-code-a-university-degree-might-be-a-huge-waste-of-time-81e1817a2ef0#.3lqdmo98u

Page 24: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

A Different Opinion

https://medium.com/javascript-scene/want-to-code-a-university-degree-might-be-a-huge-waste-of-time-81e1817a2ef0#.3lqdmo98u

Page 25: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Do Your Research!Not All Colleges, Bootcamps or Self-Study Routes are Equal!

Page 26: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Tips for Selecting a Bootcamp

Page 27: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Check Them Out On Course Report!

My listing:https://www.coursereport.com/schools/code-career-academy

Page 28: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Check Them Out On Switchup!

My listing:https://www.switchup.org/bootcamps/code-career-academy

Page 29: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Check Their Tech!

• Are they teaching technologies that are actually in demand in YOUR area?

• More on this in a bit…

Page 30: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

How About Self-Study?

Page 31: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Self-Study

• Pluralsight• http://jeffa.tech/my-secret-weapon-pluralsight/

• O’Reilly Books• https://ericelliottjs.com/• Coding Bootcamp Prep/Intro to Web Development Course

[email protected] for details• https://www.switchup.org/blog/the-best-bootcamp-prep-courses

Page 32: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Tech Stack Matters!Are There Jobs?

Page 33: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Which Tech You Choose Matters!

• Web development (client side or front-end)• HTML (structure and content)• CSS (style and appearance)• JavaScript (functionality)• Bootstrap (helps with the above)• Angular (advanced web clients)

Page 34: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Which Tech You Choose Matters!

• Web development (server side or back-end)• Node.js – JavaScript• Java EE – Java• Asp.Net – C#• Ruby on Rails – Ruby• Various others with less market share

Page 35: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

How Many Jobs in My Area?

• Web development (server side or back-end)• Node.js – JavaScript (Node = 41, JavaScript = 177)• Java EE – Java (Java = 160)• Asp.Net – C# (.Net = 161) • Ruby on Rails – Ruby (Ruby on Rails = 18)• Python = 46• Various others with less market share

http://www.careerbuilder.com/

Page 36: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

What Do I Teach?• Introduction to Web Development

• HTML, CSS, JavaScript

• Front-End Web Development• HTML, CSS, JavaScript, Bootstrap, AJAX, REST, Node.js

• Back-End Development with C# and the Microsoft Stack• C#, ASP.NET MVC Core, Web API, SQL, Entity Framework, Azure

• Data and Advanced Topics• Data Structures• Algorithms & Algorithm Analysis

Page 37: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

So How Do I Get A Job?

• Show your work!• Open Source Software• GitHub• Volunteer• Blog!!

• Network!• User Groups• Conferences

Page 38: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Practice!!!

• Code Kata/Challenges/Games• Specific skills repetition

• Build your own projects• Pick something real!• Publish the code on GitHub

• Join open source projects• Help with documentation and testing at first

• Start your own company!• Make your own experience!

Page 39: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Next Steps1. Start with some Self-Study2. Build some projects

1. Build yourself a website2. Build yourself a mobile app

3. Figure out if you like writing code4. Join more Meet-Ups5. Decide which path you want to pursue

1. 4 Year2. 2 Year3. Bootcamp4. Self-Study

6. Go for it!1. Don’t let anyone stop you

Page 40: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Managing a Career in SoftwareHow Do I Advance?

Page 41: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Manage Your Brand!Your Career IS Your Brand! Market & Manage It!

Page 42: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Show the World You Exist!

Page 43: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Step 1: Produce TONS of Code!

Page 44: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Show the World Your Code

• GitHub, GitHub, GitHub!• Build real projects

• Freelance!• Volunteer• Build things YOU need

• Contribute to Open Source projects

Page 45: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Step 2: Blog!!

Page 46: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Get Started Blogging

• Use a Service like Medium or Wordpress.com• Concentrate on producing CONTENT

• Post regularly• Once per week if possible

• Don't bother with ads…

Page 47: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Why Should I Blog?

• Build your personal brand!• Advance your career!• Display your passion as well as knowledge!• Build a reputation as a "thought leader"!• Don't overuse exclamation points!!

Page 48: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

An Example• This blog post helped me

get a job!

• Started as a problem:• Two copies of the same

site on the same server performed very differently

• One died• The other was fine

• Researching the problem led to something interesting!

• Blogging about it got attention

Page 49: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

But I'm Not an Expert!

Cheer up, sunshine!

You don't have to be!

This is the story of your journey, not your destination!

Page 50: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Showing Your Progress is Important

• Start blogging now• Keep blogging for years• Eventually you will be an expert!

• Employers can see your progression over time

Page 51: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Step 3: Social Media

Page 52: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Twitter!!

• Best flow of technical links I know

• Here's My Curated List You Can Follow:• https://twitter.com/CodeCareerAcad/lists/ccatechfeed

Page 53: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Hyper Local

• Tech404 in Atlanta• Slack

Page 54: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

YouTube, Vimeo, FaceBook Video

• Stick around at 11 for my talk• Recording and Sharing Screencasts

Page 55: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Step 4: User Groups & Meetups

Page 56: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Start as a Member

• Attend REGULARLY• Make Friends!• Exchange cards

• OK, go GET some cards printed!

• Connect on LinkedIn, etc.

Page 57: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Become a Speaker

• Same benefits as blogging!• Start small!

• Lightning Talks (10-15 minutes)

• Work your way up to a full talk• You'll never study a topic harder than when you agree to speak

about it!

Page 58: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Step 5: ConferencesLike Code Camp!

Page 59: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Start as an Attendee

• Attend as many as you can• NETWORK!!• Exchange cards, LinkedIn connections, etc.

Page 60: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Become a Speaker

• Same benefits as speaking at user groups on steroids!

Page 61: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Work Hard and Never Quit

Page 62: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Follow Me on The Web

• Blog: jeffa.tech• CCA: CodeCareerAcademy.com• Facebook: https://www.facebook.com/CodeCareerAcademy/• Twitter: jeffa00• Twitter: codecareeracad

Page 63: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Intro to Web Development

•First 3 weeks of all certificate based programs.•Study at your own pace•Price deducted from any future class you take.

•Can’t commute to our campus? Just opt in to our fully remote program!•Take our part-time classes from the comfort of your own home!

$600

Fully Remote Classes

[email protected]

Page 64: How Can I Start and Manage a Career as a Programmer? · • Introduction to Web Development • HTML, CSS, JavaScript • Front-End Web Development • HTML, CSS, JavaScript, Bootstrap,

Part-Time, Front-End Web DevelopmentJanuary 23, 2018 - April 30, 2018

•Become Front-End Certified•Create web sites using HTML, CSS + JavaScript•Study with Sam Luedke, Lead Front-End Developer•Build Projects for your Portfolio!

Part-Time, Full-Stack Web DevelopmentMarch 12, 2018 - October 1, 2018

•Become Full-Stack Certified•Evenings + Weekends•Remote in via WebEx or attend In-Person•Learn Front-End, C#, ASP.Net, and SQL•Study Under Jeff Ammons, Microsoft MVP

$4,000

$8,900

[email protected]