Interested in a job at a large company as a software developer?

Do you have the right skills to speak the right speak and do the right things?

Are you really ready to work in a large company?

Recently I've had the opportunity to speak with some college graduates and ask them about different aspects of their work and college-level experiences. They were taught theory and some practical skills very well but they lacked the right focus to help them be successful in a company setting. Book knowledge and practical implementation cannot be two separate things.

They lacked the tools to be successful as a developer within a team!

This is not an analysis on their interpersonal or communication skills. It is merely an observation on the understanding of what is required at a large company.

Teams work together. That means sharing thoughts, sharing server space, and sharing code. There are concepts (and tools) in place to help make this work easier, such as:

  • Source Code Control

  • Collaboration Areas

  • Bug/Defect Tracking

  • Change Management

  • Code Testing and Tools

  • Code Migration

  • Enterprise Standards

  • Naming Standards

  • Architecture Compliance

  • Change Control Boards (and approval)

Additionally, there are newer approaches for development, rapidly being adopted at large companies. This enhances the standard software development life cycle (SDLC) with items such as:

  • Agile Development

  • Test Driven Development

  • Self Documentation

Some additional areas I noticed lacking were in the practical knowledge space of helping any developer get their job done:

  • Requirements gathering and documentation

  • Dealing with difficult people

  • Problem resolution

Your language may be slightly different, however, most companies have some aspect of these, in order to keep them moving forward, with less complexity, and a higher level of integration.

What I recommend you do:

  • Read blogs (find some software development blogs and follow them)

  • Read books (outside of school, on different topics)

  • Get involved (in some open-source/community development task)

  • Code as a hobby

  • Look at the above topics and do some independent research

As someone looking for a job are you prepared to answer questions about these approaches and tools? Are you really ready to work in a large company?