Software Engineer
Role details
Job location
Tech stack
Job description
- Design, develop, and maintain high-quality software solutions to support the software development lifecycle.
- Collaborate with internal teams to understand their workflow, pain points and identify opportunities to improve our services.
- Implement and optimize build pipelines, ensuring scalability, reliability, and performance.
- Troubleshoot and resolve issues, providing timely support to development teams.
- Stay current with industry best practices and tools, continuous integration, and delivery.
- Contribute to the software development life cycle, including design, implementation, testing, deployment and maintenance
Requirements
Do you have experience in Spark?, Do you have a Bachelor's degree?, * Bachelor's degree in Computer Science, Software Engineering, or a related field.
- Background in Java.
- Solid understanding of design patterns, object-oriented design and best practices for creating maintainable and scalable software systems.
- Strong communication and collaboration skills, with the ability to work effectively in a cross-functional team environment.
- Knowledge of version control systems, preferably Git.
- Excellent problem-solving skills and the ability to troubleshoot complex technical issues.
- Familiarity with cloud service providers (e.g.: Azure, AWS, GCP) is a plus.
- Experience with CI/CD and build tools is a plus., * Proficiency in languages like Python (pandas, NumPy, scikit-learn), R, or Scala. Experience with SQL for querying databases.
- Hands-on experience building, training, and deploying machine learning models. Familiarity with techniques such as supervised and unsupervised learning, deep learning, reinforcement learning, and natural language processing (NLP).
- Proficiency with Git for version control and familiarity with project management tools like JIRA or Confluence.
- Familiarity with Spark, Kafka or Hadoop for processing large datasets.
Benefits & conditions
A competitive compensation package, of course. Time and resources to grow and develop, including a personal development budget and paid leave for learning days, as well as paid access to e-learning resources such as O'Reilly and LinkedIn Learning. Time to support life outside of work, with enhanced parental leave plus paid leave to care for loved ones and volunteer in local communities. Work flexibility, where TomTom'ers, in agreement with their manager and team, use both the office and home to focus, collaborate, learn and socialize. It's all about getting the best out of both worlds - we ask TomTom'ers to come to the office two days a week, and the remaining three are free to be worked in either location. Improve your home office with a setup budget and get extra support with a monthly allowance. Enjoy options to work from your home country and abroad for a set number of days each year, to visit family and friends, or to simply explore the world we're mapping. Take the holidays you want with a competitive holiday plan, plus an extra day off to celebrate your birthday. Join annual events like our Hackathon and DevDays to bring your ideas to life with talented teammates from around the world. Become a part of our inclusive global culture and have the chance to collaborate with a diverse community - we have over 80 nationalities at TomTom!