JavaScript Engineer (student internship)

WHO WE ARE LOOKING FOR
A student passionate about all things web, eager to gain hands-on experience in the tech industry.
Are you a student of computer science or a related field? Join our internship program and learn from the best! You’ll be part of our JavaScript team working on diverse web and mobile projects for clients around the globe.
You’ll work alongside experienced engineers, designers, software testers, and project managers, and under the guidance of a mentor. Our go-to technologies are React and Angular, but some team members also work with Vue, Node.js, and React Native. You’ll learn about the project lifecycle from concept to delivery, and find out first-hand how we handle client interactions.
Our JavaScript team consists of 25 engineers well-versed in all things web. We mainly work on solutions that run in browsers, but we can handle backend and mobile requests when the project calls for it. Some of the projects we’ve worked on include a corporate website for a finance company, a trading platform, an online conference platform used by the scientific community, a leasing solution for a regional bank, a suite of apps for cruise line photography, and an interactive map for truck drivers and operators. Continuous learning is part of our culture. The team hosts weekly lectures and workshops, and actively contributes to the open-source community. You’ll have plenty of opportunities to get involved and sharpen your skills.
This paid internship is held on-site in Zagreb.
01
Qualifications & expectations
- a student of computer science, or a related field, able to work a minimum of 30 hours a week
- being able to work on-site at least three times a week from our Zagreb office
- no prior professional experience is required, but could be considered a plus
- knowledge of any programming languages is a plus
- fluency in English and Croatian
- a positive attitude towards work and ambition for learning new skills
- an independent and results-driven personality
02
Scope of responsibilities
- exploring and reviewing materials from our JavaScript Academy to get up to speed with JavaScript and Angular/React
- reading through all learning materials provided by the JavaScript team
- writing clean, maintainable code and tests (unit & integration)
- rolling out new features, and analyzing the results based on the feedback from users and QA engineers
- presenting solutions to clients and/or a group of colleagues
- participating in code reviews, pairing, and other forms of knowledge-sharing
The hiring process, explained
01
Application review
Once the application window closes, we’ll carefully review your background, experience, and motivation to determine if we are a good fit.
02
Entrance exam
You’ll receive an email invitation for the online entrance exam. It will help us assess your knowledge of object-oriented programming fundamentals and Git basics.
03
Initial interview with a Talent Partner
You’ll meet our Talent Partner, who will lead you through the selection process. We get to know you, while you get to know Infinum, the JavaScript team, and learn more about the internship.
04
Online testing
This step usually includes solving several tests online, such as personality tests, logical sequences, as well as performance and concentration tests.
05
Final interview
In this stage, you’re introduced to a JavaScript Team Director, JavaScript Team Lead, and your potential Internship Mentor. You get a chance to dive deeper into the internship specifics and talk shop about all things JavaScript.
06
An Offer
We’re nothing short of impressed with you if you make it this far. All that’s left is to make it official.
04
Next thing you know
You’ll discover that this
is the best place to start your career.
Tools
we use
Next.js
We choose Next.js as a React framework for our applications.
Docker
We rely on Docker for simplifying the packaging and running our applications in production
Jest
Ever since we introduced Jest, testing has gotten easier, and now we try our best to use it wherever it makes sense.
GitHub Actions
We use GitHub Actions to build, test, and deploy our client code.
GitHub
All of our work is on Github. Everything goes through pull requests and code reviews with your future team members.
ESLint
Working with other people is so much easier with a mature style guide. We use ESLint to help us enforce a consistent code style.
Prettier
A tool in our tool belt that helps us save time both on formatting discussions and actual formatting.
Tailwind
We rely on Tailwind CSS because it lets us move quickly from idea to polished UI without fighting custom CSS, keeping our design system consistent and our workflow efficient.
Angular CLI
We make use of everything that comes with Angular CLI for easier configuration, code generation, organization, and building.
Jasmine
Writing unit tests is a crucial part of our development cycle and Jasmine is a great out-of-the-box solution.
ESLint and stylelint
Having multiple people work on a project can be challenging if there is no style guide defined. ESLint and stylelint help us adhere to our style guide and keep our code nice and simple.
Productive
We use Productive for time tracking, budgeting, and project management. It helps us have all the information in one place.
Handbook
Frontend handbook is our go-to place for an assorted collection of practices used within the team and company.
Slack
We use Slack for work and fun. It’s our go-to tool for maintaining sanity both in the office and remotely.







Apply for this position
Applications are open until September 9th, 2025.