SlideShare a Scribd company logo
10 Skills Developers Should Invest In for 2014 
Presented by 
Pakorn Weecharungsan
Introduction 
• Every minute of the work day is an opportunity for investment for us as 
developers. During this time, we can make a conscious decision to grow 
in our craft or instead chose to stagnate. Sadly many developers make 
the decision to get comfortable with a set of skills and not push 
forward. Many organizations are filled with these developers. 
• The ten key skills that innovative software developer should invest in.
Key Skill Outline 
• 1. Know a native mobile platform. 
• 2. Know a basic agile development process and toolset. 
• 3. Know how to do effective estimations. 
• 4. Know JavaScript. 
• 5. Know a server side language. 
• 6. Know basic HTML and CSS. 
• 7. Know how to quickly find information. 
• 8. Know how to maintain a project over time. 
• 9. Know Git well. 
• 10. Know a good tool for tracking tasks and issues.
1. Know a native mobile platform. 
• There are many ways to create mobile applications. From an HTML 
hybrid approach to an approach which renders native controls from 
another language. 
• However, all of these have one thing in common: when running on the 
device, these applications are running on native code. 
• if an organization is going to create and deploy a mobile application, 
they will need to utilize someone who understands the native layer, 
even if the application is built using another technique. 
• There are obviously a few good choices here. iOS, Android, 
and Windows Phone
1. Know a native mobile platform. 
• Selected mobile platforms used by app developers worldwide
2. Know a basic agile development process and toolset. 
• Every developer needs to understand the process. They need to understand 
how to track progress on tasks and how to work with other developers to get 
things done. 
• Even if you are a developer who usually works solo on projects, 
understanding agile development and an agile toolset can help you learn how 
to size your tasks as well as determine if you are on track for finishing your 
commitments. 
• There are many different flavors of agile development 
including Scrum,Kanban, Extreme Programming (XP), and many others. A part 
of this investment is doing a little bit of research to determine what method 
fits your current situation.
2. Know a basic agile development process and toolset. 
• The available agile toolsets include varying 
degrees of complexity, and in many cases the 
choices are tied to the flavor of agile 
development that you will be adopting. 
• It could be using a simple toolset 
like PivotalTracker orTrello, or it could be 
leveraging a sophisticated tool like JIRA Agile.
3. Know how to do effective estimations. 
• The key is being able to learn from each project. 
• There are effective team techniques that can be leveraged as well such 
as using story point estimation tied to team’s overall velocity. However, 
each developer still needs to learn how to estimate specific tasks for 
their own efforts within a larger project.
4. Know JavaScript. 
• There is not any tier that JavaScript cannot touch to some extent. 
Currently you can utilize JavaScript to write mobile applications, server 
applications, program the data tier, create a blogging engine, develop 
and execute a custom workflow and pretty much anything else you can 
think of. 
• Read JavaScript: The Good Parts, understand prototypal inheritance, 
and learn how to think and program like a JavaScript developer
5. Know a server side language. 
• This is a crucial element. If you are mainly a front-end developer, then 
you still need to have a cursory understanding of how things work on 
the back-end. 
• Being able to create the entire chain from a front-end application 
through the API layer and to the database is an important skill set. 
• There are a lot of choices. Java, .NET, Python, and PHP.
6. Know basic HTML and CSS. 
• Nothing is as ubiquitous in the developer landscape as web 
technologies. 
• Most every platform has the ability to render web content and HTML 
has become a de facto way of abstracting layout concepts for many 
technologies. 
• Even if you don’t do web development, having an understanding of 
HTML and CSS will only benefit you.
7. Know how to quickly find information. 
• Think of the times that you needed to leave your tool of choice for 
writing code to go look up some information in your browser? 
• Knowing how to quickly find the information that you need could 
greatly reduce the time you have to spend outside of your programming 
environment.
7. Know how to quickly find information. 
• Alfred and Dash (Mac) 
• Zeal (Windows)
8. Know how to maintain a project over time. 
• This can take many different forms. For example, you could put some of 
the software you have written out as an open-source project. 
• You could release an application in the iOS App Store, Google Play Store, 
Mac App Store, Windows Phone Marketplace, etc… In short, you need 
to know what it takes to put some software out there where you are the 
maintainer of the codebase.
9. Know Git well. 
• Git is more prevalent in some development communities over others, 
but Git is more than just a VCS (version control system). 
• Because of its efficiencies in branching, it enables a very effective new 
flow that can be leveraged by both individuals and teams.
9. Know Git well. 
• git-flow 
• This approach is a fundamental shift that 
affects not only source code but process as 
well. 
• This model work extremely well on projects 
with only a few developers to a few dozen 
developers. 
• If you are new to Git, learn it. If you are a 
novice, grow your skill set.
10. Know a good tool for tracking tasks and issues. 
• Tracking both tasks and issues for a project is an essential task that 
developers will encounter on a daily basis. 
• While there are some quality tools that are free (such as Github 
Issues or the issue tracker in Bitbucket), in most cases developers will 
also leverage more sophisticated systems like JIRA in the development 
process. 
• Learn to use these tools in a way that benefits you and streamlines your 
workflow. 
• earn how to do things which save you time like linking and closing issues 
with your commit messages.
10. Know a good tool for tracking tasks and issues. 
• Use JIRA to capture and organize 
your team's issues, prioritize and 
take action on what's important, 
and stay up to date with what's 
going on around you.
Summary 
• List important points. 
▫ Mobile 
▫ JavaScript 
▫ Agile 
▫ Git 
▫ Tracking tasks and issue 
• More information. 
▫ Agile (http://agilemethodology.org) 
▫ Git-flow (https://www.atlassian.com/git/tutorials/comparing-workflows)

More Related Content

PDF
Agile Software Development
PDF
A New Hiring Paradigm
PDF
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
PDF
It's XP, Stupid
PDF
Tips & Tricks for Being a Successful Tech Lead
PDF
Design is not Subjective
PDF
Architecture 101: Vision, Properties and Skills
PPTX
The art of execution
Agile Software Development
A New Hiring Paradigm
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
It's XP, Stupid
Tips & Tricks for Being a Successful Tech Lead
Design is not Subjective
Architecture 101: Vision, Properties and Skills
The art of execution

What's hot (14)

PDF
Why Drupal 8? Why now? FEB/MAR 2015
PPTX
Technology Development in Early Stage Startup Indonesia
PDF
Constinuous Integration
PPTX
Extreme Programming (XP): Revisted
PPTX
Developing Better Software
PDF
DevOps for Engineers
PDF
Why Drupal 8? Why now? APR/MAY 2015
PPTX
Real World Application of Development
ODP
Experiências de um Egresso do BCC como Consultor em Desenvolvimento de Software
PDF
Open Source Documentation in Four Easy Steps (and one slightly more difficult...
PDF
The ten Commandments of Project Management | Ralf C. Adam
PPT
icebreakerwithdevops-150218112943-conversion-gate02
PPTX
Scrum in-a-flash
PDF
En Route To Industry: Tips on Transferring from College into Industry
Why Drupal 8? Why now? FEB/MAR 2015
Technology Development in Early Stage Startup Indonesia
Constinuous Integration
Extreme Programming (XP): Revisted
Developing Better Software
DevOps for Engineers
Why Drupal 8? Why now? APR/MAY 2015
Real World Application of Development
Experiências de um Egresso do BCC como Consultor em Desenvolvimento de Software
Open Source Documentation in Four Easy Steps (and one slightly more difficult...
The ten Commandments of Project Management | Ralf C. Adam
icebreakerwithdevops-150218112943-conversion-gate02
Scrum in-a-flash
En Route To Industry: Tips on Transferring from College into Industry
Ad

Viewers also liked (8)

PPT
D3 Exceptions
PPTX
How to create mvc application
PDF
Профессиональные консультации от Светланы Деревенко
DOC
Examen micro
PPT
D4 Introduction to LINQ
PDF
Yourprezi
PPTX
Selenium – Web Browser Automation
PPTX
Automated Testing vs. Manual Testing
D3 Exceptions
How to create mvc application
Профессиональные консультации от Светланы Деревенко
Examen micro
D4 Introduction to LINQ
Yourprezi
Selenium – Web Browser Automation
Automated Testing vs. Manual Testing
Ad

Similar to 10 skills developers should invest in for 2014 (20)

PDF
Surviving a Hackathon and Beyond
PDF
Random thoughts and dev practices / advices to build a great product
PDF
Restless developer
PPTX
web development ppt by prakash bedage
PPTX
web development project prakash.pptx
PPTX
Recipe of a rockstar developer
PPTX
Software Development Demo:GDSC&UISS .pptx
PDF
The Guide to becoming a full stack developer in 2018
PPTX
Georgia State Presentation
PPTX
Software development process for outsourcing team
PDF
What Skills Are Needed To Become a Good Web Developer.
PPTX
Introducton of event-driven edited.pptx
PPTX
«Організація процесу розробки мобільного застосунку для аутсорсингової команд...
PDF
Dancing for a product release
PDF
How to become a great developer
PDF
How to Build a Career in Software Development: Tips and Tools
PPTX
5 Powerful Ways to Stay Relevant as a Software
PDF
Why do mobile projects (still) fail - September 2014 edition
PPTX
Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...
Surviving a Hackathon and Beyond
Random thoughts and dev practices / advices to build a great product
Restless developer
web development ppt by prakash bedage
web development project prakash.pptx
Recipe of a rockstar developer
Software Development Demo:GDSC&UISS .pptx
The Guide to becoming a full stack developer in 2018
Georgia State Presentation
Software development process for outsourcing team
What Skills Are Needed To Become a Good Web Developer.
Introducton of event-driven edited.pptx
«Організація процесу розробки мобільного застосунку для аутсорсингової команд...
Dancing for a product release
How to become a great developer
How to Build a Career in Software Development: Tips and Tools
5 Powerful Ways to Stay Relevant as a Software
Why do mobile projects (still) fail - September 2014 edition
Steve Greenley July 2015 - Enterprise Architecture and True Agility - lessons...

Recently uploaded (20)

PPTX
Tartificialntelligence_presentation.pptx
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Architecture types and enterprise applications.pdf
PDF
Hybrid model detection and classification of lung cancer
PPTX
1. Introduction to Computer Programming.pptx
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
cloud_computing_Infrastucture_as_cloud_p
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PPTX
The various Industrial Revolutions .pptx
PDF
August Patch Tuesday
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
Getting Started with Data Integration: FME Form 101
PPTX
Chapter 5: Probability Theory and Statistics
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
TLE Review Electricity (Electricity).pptx
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
A comparative study of natural language inference in Swahili using monolingua...
Tartificialntelligence_presentation.pptx
Final SEM Unit 1 for mit wpu at pune .pptx
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Architecture types and enterprise applications.pdf
Hybrid model detection and classification of lung cancer
1. Introduction to Computer Programming.pptx
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
cloud_computing_Infrastucture_as_cloud_p
Module 1.ppt Iot fundamentals and Architecture
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
The various Industrial Revolutions .pptx
August Patch Tuesday
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Getting Started with Data Integration: FME Form 101
Chapter 5: Probability Theory and Statistics
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
TLE Review Electricity (Electricity).pptx
NewMind AI Weekly Chronicles - August'25-Week II
A comparative study of natural language inference in Swahili using monolingua...

10 skills developers should invest in for 2014

  • 1. 10 Skills Developers Should Invest In for 2014 Presented by Pakorn Weecharungsan
  • 2. Introduction • Every minute of the work day is an opportunity for investment for us as developers. During this time, we can make a conscious decision to grow in our craft or instead chose to stagnate. Sadly many developers make the decision to get comfortable with a set of skills and not push forward. Many organizations are filled with these developers. • The ten key skills that innovative software developer should invest in.
  • 3. Key Skill Outline • 1. Know a native mobile platform. • 2. Know a basic agile development process and toolset. • 3. Know how to do effective estimations. • 4. Know JavaScript. • 5. Know a server side language. • 6. Know basic HTML and CSS. • 7. Know how to quickly find information. • 8. Know how to maintain a project over time. • 9. Know Git well. • 10. Know a good tool for tracking tasks and issues.
  • 4. 1. Know a native mobile platform. • There are many ways to create mobile applications. From an HTML hybrid approach to an approach which renders native controls from another language. • However, all of these have one thing in common: when running on the device, these applications are running on native code. • if an organization is going to create and deploy a mobile application, they will need to utilize someone who understands the native layer, even if the application is built using another technique. • There are obviously a few good choices here. iOS, Android, and Windows Phone
  • 5. 1. Know a native mobile platform. • Selected mobile platforms used by app developers worldwide
  • 6. 2. Know a basic agile development process and toolset. • Every developer needs to understand the process. They need to understand how to track progress on tasks and how to work with other developers to get things done. • Even if you are a developer who usually works solo on projects, understanding agile development and an agile toolset can help you learn how to size your tasks as well as determine if you are on track for finishing your commitments. • There are many different flavors of agile development including Scrum,Kanban, Extreme Programming (XP), and many others. A part of this investment is doing a little bit of research to determine what method fits your current situation.
  • 7. 2. Know a basic agile development process and toolset. • The available agile toolsets include varying degrees of complexity, and in many cases the choices are tied to the flavor of agile development that you will be adopting. • It could be using a simple toolset like PivotalTracker orTrello, or it could be leveraging a sophisticated tool like JIRA Agile.
  • 8. 3. Know how to do effective estimations. • The key is being able to learn from each project. • There are effective team techniques that can be leveraged as well such as using story point estimation tied to team’s overall velocity. However, each developer still needs to learn how to estimate specific tasks for their own efforts within a larger project.
  • 9. 4. Know JavaScript. • There is not any tier that JavaScript cannot touch to some extent. Currently you can utilize JavaScript to write mobile applications, server applications, program the data tier, create a blogging engine, develop and execute a custom workflow and pretty much anything else you can think of. • Read JavaScript: The Good Parts, understand prototypal inheritance, and learn how to think and program like a JavaScript developer
  • 10. 5. Know a server side language. • This is a crucial element. If you are mainly a front-end developer, then you still need to have a cursory understanding of how things work on the back-end. • Being able to create the entire chain from a front-end application through the API layer and to the database is an important skill set. • There are a lot of choices. Java, .NET, Python, and PHP.
  • 11. 6. Know basic HTML and CSS. • Nothing is as ubiquitous in the developer landscape as web technologies. • Most every platform has the ability to render web content and HTML has become a de facto way of abstracting layout concepts for many technologies. • Even if you don’t do web development, having an understanding of HTML and CSS will only benefit you.
  • 12. 7. Know how to quickly find information. • Think of the times that you needed to leave your tool of choice for writing code to go look up some information in your browser? • Knowing how to quickly find the information that you need could greatly reduce the time you have to spend outside of your programming environment.
  • 13. 7. Know how to quickly find information. • Alfred and Dash (Mac) • Zeal (Windows)
  • 14. 8. Know how to maintain a project over time. • This can take many different forms. For example, you could put some of the software you have written out as an open-source project. • You could release an application in the iOS App Store, Google Play Store, Mac App Store, Windows Phone Marketplace, etc… In short, you need to know what it takes to put some software out there where you are the maintainer of the codebase.
  • 15. 9. Know Git well. • Git is more prevalent in some development communities over others, but Git is more than just a VCS (version control system). • Because of its efficiencies in branching, it enables a very effective new flow that can be leveraged by both individuals and teams.
  • 16. 9. Know Git well. • git-flow • This approach is a fundamental shift that affects not only source code but process as well. • This model work extremely well on projects with only a few developers to a few dozen developers. • If you are new to Git, learn it. If you are a novice, grow your skill set.
  • 17. 10. Know a good tool for tracking tasks and issues. • Tracking both tasks and issues for a project is an essential task that developers will encounter on a daily basis. • While there are some quality tools that are free (such as Github Issues or the issue tracker in Bitbucket), in most cases developers will also leverage more sophisticated systems like JIRA in the development process. • Learn to use these tools in a way that benefits you and streamlines your workflow. • earn how to do things which save you time like linking and closing issues with your commit messages.
  • 18. 10. Know a good tool for tracking tasks and issues. • Use JIRA to capture and organize your team's issues, prioritize and take action on what's important, and stay up to date with what's going on around you.
  • 19. Summary • List important points. ▫ Mobile ▫ JavaScript ▫ Agile ▫ Git ▫ Tracking tasks and issue • More information. ▫ Agile (http://agilemethodology.org) ▫ Git-flow (https://www.atlassian.com/git/tutorials/comparing-workflows)

Editor's Notes

  • #3: How presentation will benefit audience: Adult learners are more interested in a subject if they know how or why it is important to them. Presenter’s level of expertise in the subject: Briefly state your credentials in this area, or explain why participants should listen to you.
  • #4: Lesson descriptions should be brief.
  • #5: Example objectives At the end of this lesson, you will be able to: Save files to the team Web server. Move files to different locations on the team Web server. Share files on the team Web server.