Software Developer

Underwriters Laboratories (UL)

As a Software Engineer you will join one of our Scrum Teams to maintain and develop a portfolio of payment technology related desktop test tools. You will work closely with your team members, domain experts and customers.


Your responsibilities as a Software Engineer will be the following:

  • Converting payment industry requirement specifications into executable test tool software, including: Implementing test plan specifications
  • Creating and maintaining high quality simulators for components in the payment network
  • Building user friendly user interfaces to execute and report complex processes in a comprehensible way
  • Test automation using APIs and Continuous Integration
  • Become a Subject Matter Expert in the payment domain and act as a consultant to other parts of the organization
  • Creating and maintaining off the shelf products and customer specific solutions, involving design, coding and unit testing
  • Independently implementing new features based on precisely analyzing provided specifications
  • Continuous Integration/Continuous Delivery using Jenkins and GitLab CI
  • Participating in a Scrum Team
  • Assisting the Product Owner in defining acceptance criteria for User Stories
  • Assisting the Product Owner and Scrum Teams with the refinement sessions
  • Contributing to a sustainable long term technology strategy by suggesting and implementing improvements and performing trade-off analysis

 Interfaces and authorities

  • Engineering Manager – Line Management and project team assignments
  • Product Owner – Work closely with to breakdown user stories and set acceptance criteria.
  • Scrum Master – You’ll work closely with your scrum master to report progress as well as provide estimates
  • Scrum Team Members – As a team player, you’ll share knowledge and support other software development and tester engineers.


Required experience

  • BS / MS Degree in Information Technology, Computer Science, Physics, Math or equivalent
  • 2+ years experience in programming
  • Java and one other OOP language such as Python.
  • Experience with infrastructure as code or CICD technologies like Docker, Git, Nexus, Sonarqube, Jenkins, Selenium would be pre
  • Solid experience with at least 2 programming languages (compiled or scripted languages)
  • Experienced in the Software Development Lifecycle and Agile Methodologies
  • A drive to deliver state-of-the-art products
  • A drive to provide correct and definitive answers
  • Ability to work well in an international environment
  • Good communication skills and able to self-organize
  • Proficiency in speaking and writing English.


Considered as a plus

  • Experience/ knowledge with banking payment solutions (EMV, ISO8583 based protocols)
  • Affinity and/or experience with frameworks and toolkits such as Spring, jQuery, Bootstrap, AngularJS, Hibernate
  • Experience with PaaS/FaaS services and microservices, lightweight architectures including JavaScript frameworks (Node.js, Backbone.js, AngularJS, React), single page applications, and modern web applications

Tip: Application Emails

We've noticed that people who include a brief description of themselves as well as their resume achieve better results than those who send a longer email when applying.