An internship at Clearcode is not just for gaining experience – it’s also the first step in your professional career.

Real-life experience

If you are looking to just cross off your compulsory university internship, then please keep looking. We are only interested in people who really want to gain first-hand experience and develop their skills

What should you know about an internship at Clearcode?

We take the internships at Clearcode very seriously and we expect the same in return. We are not only looking for talented and passionate people to fill our internship positions, but for ones that will become future Clearcode team members. Each potential new intern will take part in our standard recruitment process and during this time we will assess your potential and verify your skills.

Let’s talk

After we have analysed your CV, we will invite you for an interview where you will meet the Project Manager of the team. You may be asked to complete a small task based on a snippet of code that will be shown to you. Depending on the position, your previous experiences and the Project Manager’s preferences, you may also be asked to solve a more complicated programming task or present us with some of your code. The order of this process, as it is with us, is not subject to rigid regulations. If you’re successful, we will carefully evaluate your skills and preferences and match you with one of the available positions.

Show me the money!

We will reward your hard work with a 1500 zl paycheck each month. In the beginning, we will offer you a 3 month Work Contract (Umowa Zlecenie).

Come for the experience, stay for a career

The internship lasts from 1 – 3 months, but that doesn’t mean our cooperation and journey end there. If you have proven that you have the right attitude and skill sets, you may be given the opportunity to continue working as part of the Clearcode team as a full team member. If you are a student, we can offer you part-time work. We would be more than happy to discuss this possibility, as long as you can commit to a minimum of 30 working hours per week (the amount of hours per day and starting/finishing times are flexible).



Below you can find some tips and useful information from our people and team leaders as they reveal what they are looking for in potential interns.

Jarek Miazga Python PM

How can you gain experience before practice?

The right competences are acquired best by defining the issue/problem, and then finding its solution. It’s important to use every opportunity to work on various projects, even if it is a personal project and you are the only programmer. We recommend that you use and learn more about version control systems (preferably Git).

Where can you acquire knowledge?

When the issue has already been defined (project/application/script, etc) and during the development, there are all sorts of problems that can come up. There are many sources available on the Internet that can help you solve them – Stack Overflow ( being one of the most useful sources. Here at Clearcode, we use a range of modern technologies and stay up to date with the latest trends and software products and services. You can easily find information about them on the Internet. One such source that is often required when developing high-performance applications is

What can Clearcode teach you?

You will learn more about current standards of work (git flow), continuous integration, and SCRUM. Also, you will encounter various tools such as non-relational databases and frameworks – Tornado, Flask, and Django. Code review is standard practice at Clearcode – the code that you produce will be checked by an experienced programmer and you will receive professional feedback. What kind of competencies are we looking for? Reliability, great communication skills, and a willingness to learn and work. We also require you to have good knowledge of Python and JS, as well as frameworks that have been written in these languages (at least one framework in that language – Python or JS). Knowledge of Git is also required.

The right competences are acquired best by defining the issue/problem, and then finding its solution.

Piotr Banaszczyk PHP PM

How can you gain experience before practice?

The best way is to participate in the development of open-source software. This provides many advantages for both you – you’ll have the opportunity to embrace the knowledge from top class teachers who will let you know when you have made a mistake and will advise you on how to do something better – and for the community – thanks to your contribution, the community will be able to grow substantially. Another way to gain experience is to try using Linux – don’t be afraid of this system. We also work with Symfony 2, so if you would like to join us, try writing a simple design in the style of QA, a forum or a blog with the help of this framework.

Where can you acquire knowledge?

A good source of knowledge at the beginning is the Internet and in particular When you feel that the Internet is no longer enough, reach for the books! To help get you started, we can recommend the following sources:
– search and read about good practices on and
– Review open source projects on GitHub- Books from the Head First series
– Familiarise yourself with the so-called “Code Smells” –
– A good read on design patterns –
– Become familar with the Symfony Cookbook –

What can Clearcode teach you?

We will help you develop the ability to look at the project as a whole, from the overall design to the implementation of complete application architecture. You will have the chance to encounter unusual problems that often come up in software development and use a wide range of solutions. We will give you the opportunity to expand your knowledge of patterns, best practices, tools and approaches to problems, programming languages, and frameworks. You will learn the best workflows, how to collaborate in a group environment, and advanced work with Symfony 2.

What kind of competencies are we looking for?

We are looking for programmers who have a passion for developing software and get a real kick out of writing quality code and solving problems. We also need people who are not afraid of growth, change, experiencing new things and are able to play around with code, integrate it with code written by others and exchange knowledge.

Want some specifics?

  • The ability to question
  • Creativity
  • Punctuality
  • Laziness (not couch potato lazy, but someone who embraces simplicity, has automation skills and can resist the urge to reinvent the wheel.)
  • A decent level of English (because a developer without English doesn’t exist)

Marcin Wójcik Python PM

How can you gain experience before your internship?

Do you remember the saying: ‘practise makes perfect?’ It’s both banal…and true. To begin with, when you get ready to learn, try creating an app or a script that will make work and life easier for you and your friends. Read about good programming practices, try to dig deep into the optimization of Python app performance or the separation of logic from presentation. Manage your application’s versions with Git, or with Linux; play around with a framework, use SASS to create your frontend. Go to Github and see the code written by experienced developers, and then choose an open-source project and get involved yourself – you will get a chance to get valuable feedback from others who have lots of experience.

Where can you acquire knowledge?

The art of asking good questions is no less important than programming skills – great questions may quite often help you understand the problem better and quickly find a solution. Remember to remain critical during all the stages of gaining experience and knowledge – and consider: how can I do this better? How can I optimize my code? How can I make it more transferable and universal, according to DRY & KISS rules? If seems to be too banal for you, read the language documentation and look for answers to what bothers you. If you are an audible learner – search for lectures and recordings from the conferences on the Internet. This is also a good way to acquire knowledge in Python programming and its ecosystem.

What can Clearcode teach you?

Let’s be honest – nowadays it is impossible to code in only one language. There are lots of related topics and being aware of them determines whether you are a good programmer or just an amateur coder. Environment automation (e. g. using Vagrant and Puppet), Continious Integration (Bamboo / Jenkins, fabric / ansible), testing (unit, end-to-end as well as performance tests), code review, refactoring… We will teach you the best practices of creating software and make sure your code is of the highest quality. I hope this sounds interesting :)

What kind of competencies are we looking for?

  • Knowledge of Python and databases
  • The nuts and bolts of Linux and using the command line
  • Knowledge of English (at least written, to read and create documentation) – a must!
  • An ability to ask good questions and hashing out app creation
  • Involvement in work and a willingness to learn new things
  • And on a different note, but equally important – joy in writing good code :)