If you are starting your job search journey, this question has probably crossed your mind: what kind of opportunities are there available for new developers, once you have finished your ComSci/IT degree. From the experiences of applying for jobs myself, it could be summed up that your computer science knowledge would possibly fit into these 3 categories: Startups, Agencies, and Established Companies.

As an intern developer for an accounting software company, what I say here is 100% based on my personal experience.

Startups

  1. The pros:
    • The variety of projects you might work on — every day will likely be different and you can quickly gain experience in a lot of different areas.
    • The fact that you are working to create something original may lead you to try new things that perhaps you might not otherwise have worked on. You could be lucky and work on the next Google or Facebook.
  2. The cons:
    • You might not get the level of training and support that you may receive in a more established company. There are unlikely to be training schemes available and your colleagues may be too busy to offer much guidance.
    • It is often incredibly fast-paced. This can be intimidating, or exciting depending on how you look at it. Either way, you are likely to be looking at pretty long hours.

Agencies

  1. The pros:
    • variety of projects and tech stacks to work on — it’s a great place to get exposure to a number of different stacks early on in your career to a number of different stacks.
    • Working for some big name clients and often the chance to see your work in some exciting places (although you may be bound by client confidentiality and not allowed to tell your friends).
    • Often more support than in startups as your coworkers may be more available to mentor you and invest in your long-term development.
  2. The cons:
    • The work can be a bit repetitive and limiting, as you may have to adhere very closely to the client’s brief . Often you may find yourself implementing simple HTML, CSS and JavaScript before you can take on more ambitious projects. This leaves you with less opportunity to practise some of the more advanced skills you have learnt.

Established companies

  1. The Pros
    • The support, job security, training, mentorship. Big companies have a lot more time and money to spend on your professional development. You will also likely work as part of a bigger team who can support you. The existing team will likely be more used to supporting the development of junior devs, and many of these companies will already have some kind of training and development programme in place.
    • The benefits and job-security tend to be better in a bigger company.
  2. The Cons
    • Having less responsibility and less interesting work thrown at you initially. Though it is worth adding that you will likely get more responsibility quicker if you ask for it and prove that you can handle it.
    • Often working a lot with legacy code can be frustrating and you might not be able to upgrade the tech as fast because bureaucracy and complexities of the existing code base.
      I

If you have any experiences with either of these categories, don’t hesitate to comment below!