So you want to be a PHP Developer

I see countless posts and questions by new developers who want to break into the PHP development world. A common question is  What is the best way to gain PHP experience? Common answers are to build up a github profile, start blogging, internships or pro-bono work. Yeah that sounds great but for someone who is truly green that may be a little outside of their comfort zone If it is for someone looking to learn relevant skills to break into the job market the advice is a little vague. Most of the advice given online is from the hobbyist’s perspective and not from the perspective of someone who has a mortgage to pay and a family to take care of.  Below is a list of options a new php developer should take to gain experience that will hopefully land you that first PHP Web Development job.

CMS or FrameWork

I recommend picking either a CMS or a Framework. Please choose one of the popular options listed below. And stay away from small lesser known frameworks unless you want to code for fun then please do. The goal of this advice is to get the new developer into the job market faster. A quick search on indeed.com for a framework or CMS in your area will give you an idea of what Job Skills are in demand.

ZEND – http://framework.zend.com/

Tutorials – Good Luck.

Pros: 

  • High Salary – Low Supply of PHP Developers with Zend Experience
  • Job Security – very few PHP developers take on the challenge of learning Zend

Cons: 

  • Extremely High Learning Curve
  • Used mainly by enterprise business – ( This could be a plus if you are looking for stability. Just be prepared for the corporate lifestyle. )

Symfony  –  http://symfony.com/ 

Tutorials – 

Pros: 

  • High Salary
  • Lots of Documentation
  • Very Large Community

Cons: 

  • High Learning Curve

Laravel –  http://laravel.com/

Tutorials – 

Pros: 

  • Low Learning Curve
  • Lots of Documentation
  • Large and Growing Community

Cons: 

  • A relative newcomer to the php framework there are fewer employers looking for developers with Laravel experience.

Other Frameworks:

WordPress – http://wordpress.org/

Tutorials – 

Pros: 

  • Low Learning Curve
  • Lots of Documentation
  • Large Community
  • Low barrier to entry for Jobs

Cons: 

  • Oversaturated Job Market
  • Low paying entry level jobs
  • WordPress Developers are expected to be a Jack of All Trades – Frontend and Backend
  • Hated by PHP Elitists

Drupal – https://www.drupal.org/

Tutorials – 

Pros: 

  • Low Learning Curve
  • Lots of Documentation
  • Large and Growing Community

Cons: 

  • Oversaturated Job Market
  • Low paying entry level jobs ( But they do increase nicely with experience)
  • Drupal Developers are expected to be a Jack of All Trades – Frontend and Backend
  • Hated by PHP Elitists
  • Drupal 8 is changing a lot of the under the hood code – So beware you will have to learn two version of the CMS to enter the Job Market as you will have to maintain Drupal 7 and build out new Drupal sites with Drupal 8.

Joomla – http://www.joomla.org/

Tutorials – 

Pros: 

  • Low Learning Curve
  • Lots of Documentation
  • Large and Growing Community

Cons: 

  • Oversaturated Job Market
  • Low paying entry level jobs
  • Joomla Developers are expected to be a Jack of All Trades – Frontend and Backend
  • Hated by PHP Elitists

Certifications

PHP Certification: http://www.zend.com

MYSQL Certification: http://education.oracle.com 

COMP TIA Linux Certification: http://certification.comptia.org 

Unicorn Skills That will be required – (Some how through magic)

Sample Projects

You will need to complete a few sample projects to get a few of the basic skills required for an entry level developer.

  • Build a CMS – If you choose to take the framework route you will more than likely be asked to build a small custom cms.
    • Pages
    • Posts
    • File management
    • User management
    • Sitemap Generator
    • Menu Management
  • Build a Web Scraper – When transferring old sites to a cms. You will need to have the skills below to make the process easier.
    • Scrape Links from a website
    • Scrape Content from a website
  • API – API integration is all the rage. A must have for any web developer.
    • Google Analytics
    • Facebook
    • Twitter
    • Instagram
    • Salesforce
  • Build a Custom Plugin for the CMS of your choice.
  • Build a Custom Theme for the CMS of your choice. ( Use themeforest for inspiration )
    • Stock Bootstrap Theme
    • Stock Foundation Theme
  • CSS Dropdown menus and Flyout Menus – PM’s love these
  • Crazy CSS Animations – PM’s love these
  • JQuery Animations – PM’s love these
  • Sliders – PM’s love these

Conclusion

There is a lot to learn to get into the web development world and it grows more and more everyday. Do not get overwhelmed , no one person can know everything.  Focus on what you find enjoyable and continue to learn from there. The Web Development Journey is one that never ends. There is always more to learn. Also please try to drown out the hype and focus on yourself and follow Chris Coyier’s advice Just Build Websites .