About the job
Every day, Global Payments makes it possible for millions of people to move money between buyers and sellers using our payments solutions for credit, debit, prepaid and merchant services. Our worldwide team helps over 3 million companies, more than 1,300 financial institutions and over 600 million cardholders grow with confidence and achieve amazing results. We are driven by our passion for success and we are proud to deliver best-in-class payment technology and software solutions. Join our dynamic team and make your mark on the payments technology landscape of tomorrow.
Global Payments Integrated helps businesses succeed by delivering secure and personalized payment solutions, allowing developers of business management solutions to accept payments through their systems and add value to their software. While many processors offer payments tied to antiquated platforms designed to support stand-alone systems, the Global Payments Integrated platform provides custom, scalable, and fast payment solution integration – accommodating the swiftly-shifting ways consumers pay for goods and services. With this visionary payment processing platform, Global Payments Integrated helps business management software companies grow their business through our embedded commerce services, bolster customer loyalty with unique payments solutions, and improve profitability.
Your new position
You, as a C/C++ Software Engineer are responsible for the design and development of our software components that are deployed to our countertop and handheld Payment Capture terminals (Genius). The Genius products are highly secure devices capable of handling contact and contactless smart cards, Android Pay, Apple Pay, Samsung Pay etc., as well as providing value added services for both the Merchant and paying customers. Working within a team, you will develop primarily on C++ and C, and will be responsible for utilizing a variety of web protocols to integrate capabilities to our payment partner’s Point of Sale systems (PoS), providing web services to PoS, and consuming web services from our Payment Gateway.
What You Will Be Doing
- Designing and developing applications to leverage traditional card and evolving mobile payment technologies, including Smart Card (“Chip and PIN”), Contactless Cards, Android Pay, Apple Pay, Samsung Pay etc.
- Using C++ and C programming languages to deliver high quality, easily maintainable production code
- Developing secure software, using hardware acceleration and trusted computing modules to securely capture, store and transmit sensitive payment data
- Implementing secure end-to-end transactions, featuring synchronous and asynchronous cryptographic algorithms and digital signatures
- Using SOAP and JSON based web technologies as both client and server within the payment ecosystem
- Participating in the entire software development lifecycle, from requirements analysis through software and test design, implementation and unit testing, to verification and release.
- Learning and applying software design principles, including coupling/cohesion, decomposition/modularity, encapsulation/information hiding, and separation of interface and implementation
- As part of a customer-focused team, seek understanding of and value in our customer’s requirements, and actively shape the product from an engineering standpoint
- Participating in team workshops to generate ideas and high-quality technical solutions – picking the right solution whilst balancing idealism and pragmatism
- Assisting with troubleshooting and repairing defects
- Simplifying and improving existing technical methodologies
- Adhering to and applying overarching internal practices and policies with respect to coding standards, unit testing, lean development, and status reports.
What We Ask For
- BSc or MSc or equivalent in Computer Science or related field
- Working experience in C++ or C (ability to learn C++ if only C background)
- Experience of at least one of XML, JSON, HTML
- Passion for and self-motivated interest in Software Development as a profession, not just a job
- Strong analytical, problem-solving, communication and organizational skills
- Must be proactive, self-motivated, attentive to detail, and able to work well under pressure
- Strong communication skills
- Team player with a desire to learn from more experienced engineers and develop themselves
- Able to take ownership of, and responsibility for, assigned work
- Eligibility to work in the UK on a full time and permanent basis.
What we’d like you to have (but don’t need immediately)
- Experience with Design Patterns, Refactoring, OO Design and related areas is advantageous
- Experience in Linux development is advantageous.
Global Payments Inc. is an equal opportunity employer.
Global Payments provides equal employment opportunities to all employees and applicants for employment without regard to race, color, religion, sex (including pregnancy), national origin, ancestry, age, marital status, sexual orientation, gender identity or expression, disability, veteran status, genetic information or any other basis protected by law. Those applicants requiring reasonable accommodation to the application and/or interview process should notify a representative of the Human Resources Department.