Of the many different career paths you may take, a career in IT can be one of the most rewarding and interesting fields to explore. There’s something fascinating about the ability to take your laptop and create something just by mixing skills with coffee. So today, let me guide you through all the nuts and bolts you ought to know before taking your first step towards a successful IT career.
Whether you’re a student just starting out or an experienced professional looking to switch careers, I hope this brief guide based on my experience in recruiting hundreds of devs, analysts, project managers and designers helps you avoid some of the mistakes people usually make at the beginning of their careers.
The IT industry is a rapidly growing and evolving sector that offers a variety of different working environments. From small startups to multinational corporations, there is a wide range of IT businesses to choose from, and each of them offers different opportunities and characteristics.
For many people this is the obvious choice. Big, international, stable companies. Working in corporate IT certainly offers great stability, but it can get tough.
There is often more pressure to specialize and be part of a bigger, more specialized team than in other IT settings, especially in older industries where user-centric technology isn’t a priority. Additionally, it may be more difficult to communicate across different departments, which can lead to frustration when trying to get things done.
In corporate software development, you may be tasked with developing a single element of a larger system, like a specific order form on an e-commerce website, and spend months working on it based on requirements delivered by someone you’ve never met across in another business unit, with little or no influence at all over the actual shape of the final result of your work. There may be a lot of legacy code requiring maintenance using older technologies. In the end, you may not even like what you’ve created, what counts is that you meet your target.
None of that is perfect if you want to focus on creating great things instead of navigating bureaucracy and percentages in spreadsheets. Having less contact with the business side of things also limits your ability do learn and develop. You may be fully fixated on hitting targets and filling in lots of tables with little room left for creativity and innovation in your work.
Since corporations tend to care first and foremost about profit, it’s also possible to find yourself implementing processes and changing the way things are done in order to increase efficiency. If those changes don’t overlap with your values, you would need to decide if this is something that appeals to you.
However, there are some upsides too. For example, corporate IT jobs tend to be more stable in terms of employment, forms of contract and salaries. On top of that, it’s possible that you will have access to better employment benefits than in other IT settings.
Working in corporate IT has its pros and cons. It's important to weigh them all before making a decision about whether or not it's the right setting for you.
Working in IT at a startup tends to be a risky proposition, where long hours are usually combined with the promise of future profits in the form of stock options, which don’t necessarily convert to any immediate monetary value. It’s challenging and exciting to work for a startup, but it’s not necessarily the best place to start a career.
There is often little stability in terms of hours or pay, management can be chaotic and unregulated, and the development process is not usually guided by good practices. What's more, startups are usually underfunded, so you might have to work longer with little resources or support.
However, there are also some advantages to working in IT at a startup. These companies are often characterized by high agility, and startup teams are more closely bonded together and share a common goal that can all make for a more exhilarating and impactful work experience.
Furthermore, you may have more room for creativity and initiative than in other IT settings because startups are often looking for out-of-the-box solutions. However, this can be challenging if you're not used to working in a fast-paced environment.
At startups, a programmer often has to not only be a jack of all trades in terms of technical skills, but also needs to develop a close relationship with the business side. Working at a startup might mean you will have to participate in meetings with VCs or clients and have to understand the workings of capital funds. Whether this is a pro or a con depends on your interests and future ambitions.
If you're looking for stability, a startup may not be the best choice either. But if you're willing to take on some risk for the chance of a truly rewarding experience, and you actually have some valuable experience to offer, as well as a stable financial situation, which allows you to take some risks, then a tech startup could be the right place for you. Startups can be a great adventure, but they may slow down your professional growth, so it’s usually best to consider this type of environment when you are already a self-reliant specialist in your field. Then, you will also be more valued.
A.K.A. dev farm. This type of company is usually the middleman between you and the client, so you’re employed by one entity, and your work is managed by another, which is not ideal. They tend to pay well because they take advantage of clients who are desperate to hire engineers quickly or don’t want to tie themselves up with employment contracts.
There’s a high chance that the client doesn’t have the competencies necessary to verify candidates properly or manage you the right way, so you may be expected by your employer to perform as a regular or even senior level professional with junior level skills. From day one. This can be frustrating, especially if you are aware that you are not capable of doing the full job of a senior developer.
And yes – in many software development companies, even junior developers are paid relatively well. As such, you are likely to end up earning a decent salary. However, the software development industry is notoriously unstable – market conditions can change rapidly and companies often have to adapt or risk being left behind. Also, outsourced staff is usually the first to be let go in times of trouble.
This can make it difficult for software development companies to maintain stable workforces, as they sometimes need to lay off employees during periods of slower growth. Body leasing – hiring outside developers to work on a project – is often seen as a way to reduce costs during such times, so they carry a lot of the risk over to the employee.
At the beginning of your career, you’re looking for experienced mentors and end-to-end, stable projects. Working in highly rotating teams can hinder your growth, so those are the companies you should avoid before you're 100% self-reliant.
Working in a product company has many perks for those who are just starting their IT careers. This is usually the best environment for growth. Companies working on end-to-end projects with a high degree of ownership and the ability to make crucial decisions about the tech stack used and the path to success attract the most skilled devs, and they facilitate knowledge transfers.
From day one, you will be exposed to a lot of project diversity. You will also get to work with the latest tech, updated with every new project, and be at the forefront of innovation, as product companies are usually more open to experimenting with new technologies and trends.
You will also have the chance to learn from people who have a lot of knowledge to share and are usually willing to share it. You’ll have access to plenty of resources and guidance from more experienced senior developers and mentors who can help you hone your skills and teach you a lot and will be in an environment where creativity is highly valued.
Moreover, in a product company you have the option to work with and for various technology partners, and such workplaces are generally more likely to provide better job security and career progression opportunities too.
You also have the opportunity to work on smaller, more diverse and agile project teams, plus you get to be in close proximity to the client-side business and participate in stack selection for a particular project.
The overall benefits are great, and the additional stability will probably be much appreciated. Starting your IT career in a software product development company can be both challenging and rewarding. It certainly is a way to learn good practices and gain knowledge.
Of course, I only mentioned the most popular types of companies at which you can start an IT career. There are many other places to look for work, such as:
The IT industry is constantly changing, presenting both challenges and opportunities for professionals in the field.
When talking about struggles of the IT industry, you can’t avoid the subject of the huge churn rate of IT personnel. This can, obviously, provide you with an opportunity to constantly advance your career and experience different working environments.
On the other hand, job instability is becoming increasingly common, so it’s important for IT professionals to stay up-to-date with their skills and remain marketable. For employers, this can be especially challenging and expensive, since recruiting new personnel requires time, effort, and money.
As such, companies are looking for ways to retain their top talent and create an atmosphere of job security in which employees feel valued and appreciated. And this works well at companies that can offer development opportunities and interesting and diverse projects to keep their people interested.
This phenomenon refers to a loss of highly educated people from a certain country or organization. In the IT industry, it often happens due to higher salaries and better working conditions being available in other countries.
Poland is one of the countries that suffers from this issue, with many IT professionals choosing to leave the country in search of better opportunities abroad.
Brain drain can be a major problem for companies that are looking to hire qualified IT personnel, as it is often difficult to find experienced professionals who are willing to remain in the same place and complete their projects.
This means that employers have to constantly look for new talent and offer salaries that are competitive enough to attract and retain qualified personnel. So it’s worth to ask for any policies regarding the process of getting a salary raise in your recruitment process.
Naturally, the cost of employing IT personnel is constantly increasing. It is becoming ever more expensive to build an in-house team of professionals as both salaries and the demand for qualified personnel are growing.
Moreover, companies often have to invest a lot of money in training new employees and making sure they stay up-to-date with the latest technologies.
At the same time, an increasing focus on the employee experience means that companies need to invest even more money in creating comfortable working environments and offering additional benefits. All of this results in higher costs for IT employers and puts a strain on their budgets.
Unfortunately, the IT industry in Poland doesn’t tend to be well-recognized abroad. Many international companies recognize the talent among Polish engineers, so they are willing to invite them to join their teams directly or through third-party providers, as long as the get to manage their work.
What they don’t realize is that companies like Future Mind have gathered more than a decade’s worth of knowledge and experience in solving business problems by implementing technological solutions made from scratch. So when you look for work, find a company that actually has a solid portfolio of completed end-to-end projects. There aren’t that many of them out there, but they surely offer a better learning environment.
Though the level of programming education in Poland is improving, there are still some debates about the quality of courses offered at universities particularly in terms of teaching newer technologies - including, for example, mobile software development. Many employers feel that graduates lack practical knowledge and experience, which makes it harder for them to find qualified developers.
Meanwhile, the challenge for wannabe developers is not having a guarantee that their knowledge and skills acquired at universities will be enough for employers. So how to solve this when you’re looking for your first job in Tech? Find a company that offers a reasonably structured, paid internship program. You can read about Future Mind’s internship offers here.
There are quite a few paths you can take when pursuing a career in IT. Here are some of the most popular specializations for new professionals:
Do you prefer to work in a team or independently? In the IT field, there are many different types of professionals who choose different paths.
Some enjoy collaborating in teams to share ideas and experiences, while others prefer working alone as it gives them more control over their work. Some like contract work, while others prefer permanent jobs.
What you expect is also an important factor. Do you want to work in a corporate environment or a startup? This determines the type of projects, pace of work, and culture that you will be working in.
Whichever way you choose, every company will offer at least one way to formally enter into cooperation. Some are more flexible than others. Contract of employment, B2B, contract for specific work. They all have their implications depending on your age and status. E.g., in Poland, if you are a student below 27 years of age you can pay no tax or social security contributions on a contract of mandate, but once you finish your studies or go past your 27th birthday, you might prefer to choose other forms, which offer more stability, once the tax benefits are gone. The important thing here is that you get to choose, so find an employer who gives you options.
Working conditions and perks can have a big impact on your work. Consider what kind of working hours, environment, and benefits you want in order to be productive and feel fulfilled.
Ask yourself if you would benefit from having paid days off, remote opportunities, and/or a good health insurance package. Also, think about the desirable team size and project complexity that you think suits you best.
It goes without saying that equipment (electronic devices) and technologies used during work should be up to date and in line with the current industry standards.
A flexible working environment means that you can choose where and when to do your job. Does a fully remote position sound attractive? Or maybe a combination of home office and on-premises? Would you prefer to go to the company office every day or have a flexible schedule?
These are just a few questions you should ask yourself in order to find the right balance right here, as IT workers are presented with many opportunities.
The IT field is known for its flexible working hours, as well as the ability to take a break whenever needed. Many companies offer flexible schedules that allow employees to work according to their own availability. Just make sure that this doesn’t mean constant overtime.
You should be able to opt for shorter or longer days depending on your needs and commitments. Some companies also offer flexible hours to accommodate specific lifestyles, such as those who study or prefer to work at night, parents who have chores during the day, etc.
The key is to find a job that will not only be financially rewarding, but can also make you feel comfortable and allow you to live your life to the fullest. Work and life can coexist to the point that it’s difficult – yet painless – to separate one from the other.
The idea of work-life integration is becoming ever more popular in the IT field, as it provides a freedom and flexibility that allows focus on tasks while also taking care of yourself and your family. Making this shift can be difficult, but there are many benefits to consider, and once you do, you decide when you prefer to go into a state of deep focus.
In conclusion, when it comes to a career in IT, the possibilities are endless. Consider your skills and preferences when researching job offerings and employers, think about what kind of work conditions will make you feel fulfilled, and determine the goals that you want to achieve. At the beginning of your career, you should first and foremost look for experienced mentors, end-to-end projects and companies that can provide you with an environment that encourages fast learning. A good internship program can take you to a level which many people struggle to achieve in 3-4 years, in as little as 12 months.