Contribute to a safer, secure and more sustainable World! At UL, we know why we come to work. Thousands of us around the world wake up every day with one common purpose – to make the world a safer, more secure, and more sustainable place to live. We clear the way for our customers to introduce the latest products, technological advances, and systems in an increasingly complex world so they can provide peace of mind to the market. Our integrity is woven throughout our company and shapes the way we approach and deliver our solutions. We are proud that the work we do every day has a meaningful contribution to society. We continue to build upon our legacy of trusted expertise and partnership to keep our communities safe and secure as we march forward into the future. This helps us to sleep better at night, and we are confident that the millions of people we touch rest easier too.
Our team consists of a unique combination of engineers, scientists and domain experts working on software and hardware, which is used to ensure the security and interoperability within the world of electronic transactions including the latest mobile payment solutions and modern transit payment systems.
Our tools, consisting of desktop, web-based and mobile software (and specialized hardware), are used by major payment industry players in order to test systems and devices such as data processing systems, mobile devices, point-of-sale terminals, ATMs and SIM cards.
- Develops software programs by analyzing requirements, preparing specifications, designing, coding, testing, debugging and documenting
- Resolves problems by devising or modifying programs considering equipment capacity and limitations, operating time and form of desired results; QA activities and responsibilities included
- Identifies software requirements by interviewing users, interviewing and selecting vendors (if applicable), analyzing applications, evaluating existing and proposed software and recommending solutions.
- Contribute to test automation in order to guard high quality software
- Create technical design, implementation and perform testing of various desktop, web-based, mobile, and customized applications
- Improving software performance by customizing purchased software and suggesting new technology
- Resolves problems by researching, documenting issues, diagnosing and recommending solutions
- Provide accurate and detailed estimates for tasks, delivering on commitments;
- Assist in writing manuals and perform quality assurance related tasks
- Provide services to our customers through product deployment, support and advice.
- Guide brainstorming sessions with other Software Engineers
- Contributing to a sustainable long term technology strategy by modeling solutions and performing trade-off analysis
- Coach and mentor junior colleagues
- BS / MS Degree in Information Technology, Computer Science, or equivalent experience.
- At least 7+ years’ experience in software development.
- Expertise with Java or JVM based programming language.
- Knowledge of relational databases and SQL.
- Knowledge with version control systems (Git).
- Experience with application architecture patterns and best practices.
- Good experience with frameworks and toolkits such as Spring, Spring Boot, Hibernate
- Team player.
- Affinity with front end technologies like jQuery, bootstrap, AngularJS.
- Experience with cloud services like AWS/Azure.
- Experience with container technology (Docker, Vagrant).
- Experience in mentoring more junior software engineers.