Internships in a nutshell: all you need to know about Summer & Winter Programs at Software Mansion and how to get on board!
Internships have been a part of Software Mansion for many years now – we run both a summer and a winter edition of the program. During that time, over two hundred people have joined us this way, and most of them are still with us today. We hope that, just like in previous years, our internships will be an opportunity for many of you to start your career in Software Engineering or take on a new, more challenging role.
In this article we would like to share everything you need to know about our internship programs.
TL;DR
What: Software Engineer Internship
Where: Kraków, our office at Zabłocie 43B
Salary: 6500–13500 PLN gross monthly
Summer edition: lasts 3 months – typically from early July (or June, if you're available earlier) until the end of September (availability full-time – 40 hours per week), applications usually open around March
Winter edition: lasts around 4–6 months – flexible start between mid-January and early March, until the end of June (availability at least 28 hours per week), applications usually open around October
Questions and contact: internship@swmansion.com
Newsletter: sign up HERE to get notified when the next edition opens or visit our careers page for announcements!
About Software Mansion
We’re a company specializing in creating great developer experiences. We fulfill our mission by working on exciting projects with our clients, by building top-notch developer tools, and by working hard to make sure that the efficient work is also satisfying. Our clients are mainly startups from the United States, but we also work with companies from Asia, the Middle East, and Europe. We also work with some corporate clients.
As for the projects we work on, they can be divided into two main categories:
Client projects – we build products from scratch or help develop existing ones. We don't specialize in any particular industry – instead, we like projects that we know we bring value to the client. Clients appreciate our product mindset and the fact that our developers usually work with them directly.
Open-source and internal projects – we contribute to React Native open source, co-develop Expo, and work on our own frameworks for multimedia and streaming. Our developers also create tools and solutions to support our internal needs. If you come up with an idea for a product or tool yourself, there's a real chance the company will back it and help you develop it. You can read more about our projects here.
We like to think of ourselves as generalists – we work on mobile apps, web frontends, backends, AI, multimedia, and blockchain alike. Most of our projects rely on React Native, TypeScript, React, Node.js, Python, Django, and Elixir. From time to time we also work with Rust or C++ – as well as other technologies whenever a project calls for it.
What criteria should I meet?
The recruitment process is open to everyone, no matter their educational background or age. We’re not looking for any particular skills – instead, we’re looking for smart, curious, and versatile people with a strong engineering mindset. It certainly helps if you do know the technologies we use, but if you don’t, you'll pick them up during the internship.
It is expected that you already know the core basics of programming, so if you have survived two or three years of Computer Science or a similar major, you should know enough (please note: CS background is not a formal requirement).
During the recruitment process, you might be asked about the following basic topics:
basic algorithms and data structures,
common programming paradigms and patterns,
basics of memory management (pointers, references, garbage collector, etc.),
networking (protocols, routing, etc.),
databases,
basics of operating systems (process vs. thread, inter-process communication, multithreading),
basics of web applications (HTML, CSS, REST API, HTTP, etc.),
basics of Linux or macOS usage,
basic usage of Git,
basics of automatic testing.
It isn’t a requirement, but it’ll boost your chances if you know any of the following advanced topics:
basics of DevOps (Docker, Nginx, CI, etc.),
basics of mobile development (either Android or iOS),
basics of multimedia technologies (image, video, and audio formats, streaming, and processing),
basics of machine learning/AI,
any of the major programming languages or technologies used in Software Mansion (especially TypeScript, React and React Native).
We also require moderate proficiency in both written and spoken Polish and English (B2 or higher).
What will I be working on?
Unfortunately, at this stage, we’re unable to tell you exactly which project you’ll be working on, but it certainly won’t involve brewing coffee. We want you to be productive and learn as much as possible from our specialists from week one, and it’s very important for us that the internship projects are real ones.
During the recruitment process, you’ll have a chance to voice your preferences so that we can find a great fit for everyone. We can't guarantee that you'll be assigned to a project using the technologies you're most interested in. We'll do our best to match your preferences, but the final decision depends on the projects available when you join us.
Recruitment process
Internship Newsletter
To make sure you don't miss the next edition of the internship, sign up for our newsletter. Once we launch the next edition of the program, everyone on the list will receive an email with all the details on how to apply – so you won't miss your chance.
Sign up for the internship newsletter!
The announcement will also be published on our website, so we encourage you to keep an eye on it. Applications for the summer internship usually open around March, while applications for the winter internship open around October.
Before the interviews
- Register: to enter the application process, fill out our questionnaire with your basic data: name, email, education or work history. Please remember to attach your current CV. Once you apply, you'll receive an automatic confirmation email.
Solve our recruitment tasks & tell us more about your motivation: you’ll be asked to solve some simple technical tasks. You can expect both an algorithmic task to write some code, and some questions verifying your knowledge and information-finding skills. Also, we’ll ask you to answer some open questions on why you would like to join our internship program and what you would like to get from it.
We’ll also take a look at the projects you've worked on. Tell us about one you're particularly proud of and what you built. It can be a personal project, a team project (just let us know which part you were responsible for), or a commercial one. If it’s commercial, share as much as you can – we understand that you may be bound by confidentiality. Whatever the project, it's often the best way for us to understand how you think and what you're capable of building.
- Wait for feedback: After you complete those steps, our committee will decide if we want to invite you to the next step – the interviews part. It shouldn’t take us more than two weeks from when you complete all the steps. If your application is rejected, you’ll be informed by email.
The interviews
Your interviews will be conducted remotely and will consist of the following parts:
Step 1: The first stage consists of two interviews:
HR interview – an about 30-minute conversation with our HR recruiter, during which we'd like to learn more about your studies, experience, your approach to using AI at work, and the technologies you've had the opportunity to work with. The interview will also include a short conversation in English.
Technical Interview 1 – an about 60-minute technical interview with one of our developers, during which you can expect questions covering both general computer science knowledge and specialized topics (in particular – questions about the technologies you've worked with and listed in your CV), as well as an algorithmic task solved in a live coding format.
You'll schedule both of the interviews at once, but they can take place on different days.
Step 2: Technical Interview 2 – If the first technical interview goes well, we'll invite you to a second one, which may be similar to the first one. This time it’ll be conducted by a different developer. The reason we hold two technical interviews is to get two independent opinions on each candidate. Before this interview, we'll also send you a short questionnaire about your technology and work preferences – it helps us match you with a project later on.
Step 3: Final interview – A 30-minute chat with one of our senior people. During this interview we’ll focus on your background, your motivation, and you’ll also have a chance to talk about your preferences for the internship.
Step 4: The offer – You can expect our decision no later than two weeks after the final interview, but we’ll try to provide it to you as soon as possible. In case of a delay, we’ll let you know about it.
You’ll be able to select the time and date of each of the steps separately, and you’ll get instructions on what you should prepare before the interview. During each interview, you'll also have the chance to ask our interviewers questions about the recruitment process or their work.
Keep in mind that we receive a lot of applications and review them on an ongoing basis. That's why we encourage you to apply as soon as you're ready – the earlier you reach out, the better.
Start of the internship
Summer Internship – lasts 3 months, typically from July (if you're available earlier, for example in June – part-time is fine at that stage) until September 30. During the internship itself, we expect full-time availability (40h/week).
Winter Internship – lasts around 4–6 months, depending on when you start (typically from January/February). Here we ask for a minimum of 28h/week instead of full-time, and while start dates are flexible, all interns finish on June 30.
In both cases, we'll offer you a few possible start dates to choose from – once we agree on one, we'll take care of the rest and guide you through your first day at the office.
F.A.Q.
Q: I need to know your decision early. How long will I need to wait?
A: You will wait up to two weeks to get the decision to invite you to the interview and up to two weeks to wait for an offer (but we will try to provide it to you as soon as we can). You can choose the preferred dates of the interviews, so you have some impact on how long this process takes. If you are fast, you should be able to finish the whole process in around 4 weeks. If you have any special timing constraints, please let us know!
Q: Will I be able to continue working at Software Mansion after the internship?
A: Many of our current team members started their journey with us as interns. That said, we’re looking for individuals who truly stand out during their internship, so while continuing after the internship is definitely possible, it’s reserved for those who really shine during their time with us.
Q: Do I have to be a university student?
A: No. While most of our interns are students, this is not a requirement.
Q: Can I do the internship on other dates?
A: We will have several starting dates for you to choose from. If you would like to start earlier or later, it should be possible, but please discuss that with your recruiter.
Q: I took part in the past recruitment process for an internship or Software Engineer position at Software Mansion, but I got rejected at some stage. Can I apply once again?
A: If you applied 12 months or more ago, feel free to reapply. If less time has passed, we decide on a case-by-case basis. Generally, the further you have progressed in the process, the less time will be required to try again.
Q: Can I do the internship remotely?
A: No. Unfortunately, we do not offer remote internships. However, it is not a problem to work remotely from time to time when there is a need to.
Q: Is it possible to work remotely after the internship?
A: We strongly prefer on-site and hybrid work. Depending on your feedback, we might be able to offer remote work as well.

