Top Banner
Real World Application of Development
19
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Real World Application of Development

Real World Application of Development

Page 2: Real World Application of Development

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

Page 3: Real World Application of Development

SCPS Development Projects

• Campus Scheduling• Data Scrubber• Dual Enrollment• Check-in/Check-out• Summer School• WakeOnLAN• Student Import• Summer School• Grants (Testing)• Internship (TBD)

Page 4: Real World Application of Development

Tools We Use

• Visual Studio Professional/Ultimate

• SQL Server

• DB Visualizer

• Notepad++/UltraEdit

• Crystal Reports

• FileZilla

• Adobe Suite

Page 5: Real World Application of Development

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.

Page 6: Real World Application of Development

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.

Page 7: Real World Application of Development

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.

Page 8: Real World Application of Development

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).

Page 9: Real World Application of Development

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

Page 10: Real World Application of Development

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.

Page 11: Real World Application of Development

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

Page 12: Real World Application of Development

How to Get Started/Career Path

• Get experience early.

• Get the degree.

• Continuously learn.

• Network with your peers and mentors.

• Set a goal timeline.

Page 13: Real World Application of Development

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.

Page 14: Real World Application of Development

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.

Page 15: Real World Application of Development

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.

Page 16: Real World Application of Development

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.

Page 17: Real World Application of Development

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.

Page 18: Real World Application of Development

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.

Page 19: Real World Application of Development

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!