2. My Background
• AS in Computer Engineering, BS in Computer
Information Systems, MS in Information Systems
• CCNA and A+ Certifications
• 8 years as a Sysadmin/Network Admin at small ISP
• 5 years as a Programmer I/II at Daytona State College
• 3 years as a Sr. Software Developer with SCPS
• Fluent in 22 programming languages
3. SCPS Development Projects
• Campus Scheduling
• Data Scrubber
• Dual Enrollment
• Check-in/Check-out
• Summer School
• WakeOnLAN
• Student Import
• Summer School
• Grants (Testing)
• Internship (TBD)
4. Tools We Use
• Visual Studio Professional/Ultimate
• SQL Server
• DB Visualizer
• Notepad++/UltraEdit
• Crystal Reports
• FileZilla
• Adobe Suite
5. Current State of Development
• High demand for those with education and expertise.
• High entry-level salary.
• Opportunities in multitudes of languages.
• Employers ranging from start-ups to Fortune 500
corporations.
• Perks are the highlight for developers right now,
more so than salary.
• Plenty of opportunities for contract work, even
overseas.
• Movement towards DevOps.
6. The Three Pillars of Development
• Pillar 1: Degree
• Don’t just focus on Computer
Science.
• Pillar 2: Experience
• You can never have too much.
• Pillar 3: Certifications
• Nice, but not necessary.
7. Pillar 1: Degree
• Absolute must-have for today’s workforce.
• Shift from Computer Science to Information Systems.
• Focus major on your career goal, minor in a backup
career goal.
• Take extra classes in networking and healthcare
informatics.
• Supplement your book knowledge with practical
experience.
8. Pillar 2: Experience
• You can never have too much experience.
• Seek out internships whenever possible.
• Practical real-world applications matter more than
classwork/labwork.
• Work in a team whenever possible.
• Do research on various software development
methodologies and practice them in your
development (SCRUM, Agile, Waterfall).
9. Pillar 3: Certifications
• Database Certifications: Oracle Certified Professional;
Microsoft SQL Certifications (MCSE, MCSA, MTA);
MongoDB Certified DBA/Developer
• Programming Certifications: Microsoft Certified
Solutions Developer (MCSD); Adobe Certified Expert
(ACE) for Developers; Google Apps for Business
Certified Deployment Specialist
• Alternative Certifications: Cisco Certified Design
Associate; Certs for your language
10. Important Skills to Learn
• Databases.
• Learn as soon as possible.
• Time/project management.
• Learn from open-source software (OSS).
• Organizational skills.
• Messy desks are fine, messy minds aren’t.
• Collaboration/communication.
• Work with a team, learn how to talk non-techie.
• Invest in cheap/free tools.
• Raspberry Pi, free Microsoft development studios, DreamSpark.
11. Important Languages to Learn
Language % Use Base Lang.
C 16.5 C
Java 15.3 C
C++ 6.6 C
Objective-C 6.0 C
C# 5.7 C
JavaScript 3.5 C
PHP 3.2 C
Python 2.9 C
Visual Basic .NET 2.0 BASIC
Visual Basic 1.7 BASIC
Language % Use Base Lang.
Delphi 1.6 Pascal
Perl 1.4 C
PL/SQL 1.3 Datalog
F# 1.2 C
Transact-SQL 1.1 Datalog
ABAP 1.0 COBOL
MATLAB 1.0 C
R 1.0 C/Fortran
Pascal 1.0 Fortran
Ruby 0.9 C
12. How to Get Started/Career Path
• Get experience early.
• Get the degree.
• Continuously learn.
• Network with your peers and mentors.
• Set a goal timeline.
13. Experience
• Start volunteer work ASAP.
• Get an internship or volunteer with community
organizations.
• SCPS offers internship opportunities.
• Join in on other internship/job fairs.
• Ask outreach organizations if they need computer help.
• Build your resume/portfolio NOW. Add
apps/websites/other work as you complete it.
• Community/Work Projects > Personal Projects > School
Projects.
14. Degree
• Unless you are trying to create/join
a start-up, you’re unemployable
without a bachelor’s degree at a
minimum.
• Demand for developers is high, but
supply is high.
• Don’t narrow your focus when a
general degree will work.
• Remember that “book code” and
“real code” are different. Read for
understanding of how to apply to a
real-life scenario.
15. Continuously Learn
• Religiously perform “hour of
code” every night.
• Get app ideas from your
family, and then try and code
it.
• Program for games (WoW,
Minecraft, Skyrim, Steam
Workshop, Unreal engine,
Unity engine).
• Invest in cheap hardware for
programming against
(Raspberry Pi).
• Never turn down
constructive criticism.
16. Network With Peers and Mentors
• Internship!
• Help out on an Open Source
project.
• Join Codeplex and Stack
Overflow and offer tips,
suggestions, solutions, or just
lurk for knowledge.
• Find a mentor, either online or
physical. The mentor needs to
be active in the field, not
necessarily a teacher.
17. Goal Timeline
• Now: Learn databases. Take a DBA certification test
in college.
• College Sophomore: Develop your own website.
• College Junior: Learn at least 3 languages.
• C/C++
• Java (derivative of C)
• Language of choice for your industry.
• Swift/Go/Java for mobile.
• C#/Java/Python for desktop.
• C#/Ruby/PHP for web.
18. Future of Development
• Startups will rise and fall, with the occasional buyout.
• 93% of all startups fail within 5 years.
• Mobile expansion, but never dominance.
• Everyone wants to be the next Notch (of Mojang fame, Minecraft).
Game development is not the be-all, end-all!
• Databases continue to thrive and expand. Every bit of data is stored
in a database.
• Cross-discipline workers. The networker who can code, the
programmer who can network. Be prepared to wear many hats.
DevOps is the buzzword of tomorrow!
• Be prepared to compete on international level.
• Time-destructive code.
• Less and less focus on certifications, more and more focus on
degrees.
19. Final Words
• Failure is an option, and a good learning experience.
• You learn far more from a good failure than a
mediocre success.
• Accept the constructive criticism and improve your
development for the future.
• Never be afraid to go into uncharted territory.
• Never turn down an opportunity to learn something
new.
• Never give up, never surrender!