Negotiable Salary
Valsoft Corporation
Montreal, QC, Canada
About ValPay ValPay is an embedded payment solution that allows you to onboard merchants, process transactions, and effortlessly optimize your revenue—without the burden of managing underwriting, compliance, and regulatory complexities that come with being a PayFac. Our PayFac-as-a-Service model gives you all the benefits of integrated payments while we handle the heavy lifting. About the Role Valpay is seeking an experienced C++ and Java Developer to join our agile development team. This role involves working on industry-standard payment devices from Ingenico and Verifone, delivering robust, secure, and high-performance embedded software solutions as well as contributing to our backend solution. Our team specializes in providing cutting-edge payment technology services and solutions, ensuring seamless transaction processing for our customers. If you are passionate about embedded development, payment technologies, agile methodologies, and thrive in a collaborative and fast-paced environment, we invite you to apply. What You'll Do Develop and optimize embedded software for payment devices, ensuring security, performance, and reliability. Implement and maintain integrations with JSON-based platform APIs and 3rd-party APIs. Design, develop, and debug C/C++ applications for payment terminals and related devices. Collaborate with cross-functional teams to define requirements, enhance system performance, and troubleshoot production issues. Contribute to best practices for development methodologies, coding standards, and system architecture. Ensure compliance with security standards (PCI DSS) and industry regulations. Utilize source control systems to maintain code quality and track software changes. Comfortable with tools and practices related to the Software Delivery Life Cycle (SDLC) Write and maintain technical documentation to support development efforts. Participate in code reviews, agile sprint planning, and daily stand-up meetings. What You Bring Strong C/C++/Java programming skills, with experience in embedded systems development in C/C++. Proficiency with GNU and Microsoft Make for build automation. Experience in Windows Embedded C/C++ Development, using Visual Studio. Hands-on experience with Linux GNU C/C++ compilers and make tools. Familiarity with Rocky Linux (replacing CentOS 7) for payment application development. Experience with XML/JSON APIs and integration with 3rd-party services. Experience with backend microservices developed in Java with Spring Boot Experience with applications hosted in the cloud (GCP, AWS, ...) Basic SQL skills, preferably using MariaDB and MySQL, and also No-SQL database like MongoDB Familiarity with scripting languages, including Windows CLI (.bat scripting) and Linux Bash. Experience with JIRA and Confluence for tasks, issue tracking and documentation. Strong debugging and testing skills to ensure software reliability. Experience with source control systems (e.g., GitLab, Github, ...). Ability to work independently with minimal supervision while collaborating effectively in a team setting. Strong written and verbal communication skills to document and present technical concepts. Experience with efficient troubleshooting of production incidents using modern observability platforms (Datadog, New Relic, ...) Fluent in English and French Bonus Points For Experience in the payment industry, including payment processing applications, certification and PCI compliance. Knowledge of embedded device security and encryption standards. Familiarity with OpenSSL, Boost, or other relevant C++ libraries. Understanding of real-time operating systems (RTOS) for embedded systems. Cloud-based API integration experience (AWS, Azure, etc.). Experience working in an Agile/Scrum environment. ----------------------------------------------------------------------------------------------------------------- About ValPay ValPay is an embedded payment solution that allows you to onboard merchants, process transactions, and effortlessly optimize your revenue—without the burden of managing underwriting, compliance, and regulatory complexities that come with being a PayFac. Our PayFac-as-a-Service model gives you all the benefits of integrated payments while we handle the heavy lifting. About the Role Valpay is seeking an experienced C++ and Java Developer to join our agile development team. This role involves working on industry-standard payment devices from Ingenico and Verifone, delivering robust, secure, and high-performance embedded software solutions as well as contributing to our backend solution. Our team specializes in providing cutting-edge payment technology services and solutions, ensuring seamless transaction processing for our customers. If you are passionate about embedded development, payment technologies, agile methodologies, and thrive in a collaborative and fast-paced environment, we invite you to apply. What You'll Do Develop and optimize embedded software for payment devices, ensuring security, performance, and reliability. Implement and maintain integrations with JSON-based platform APIs and 3rd-party APIs. Design, develop, and debug C/C++ applications for payment terminals and related devices. Collaborate with cross-functional teams to define requirements, enhance system performance, and troubleshoot production issues. Contribute to best practices for development methodologies, coding standards, and system architecture. Ensure compliance with security standards (PCI DSS) and industry regulations. Utilize source control systems to maintain code quality and track software changes. Comfortable with tools and practices related to the Software Delivery Life Cycle (SDLC) Write and maintain technical documentation to support development efforts. Participate in code reviews, agile sprint planning, and daily stand-up meetings. What You Bring Strong C/C++/Java programming skills, with experience in embedded systems development in C/C++. Proficiency with GNU and Microsoft Make for build automation. Experience in Windows Embedded C/C++ Development, using Visual Studio. Hands-on experience with Linux GNU C/C++ compilers and make tools. Familiarity with Rocky Linux (replacing CentOS 7) for payment application development. Experience with XML/JSON APIs and integration with 3rd-party services. Experience with backend microservices developed in Java with Spring Boot Experience with applications hosted in the cloud (GCP, AWS, ...) Basic SQL skills, preferably using MariaDB and MySQL, and also No-SQL database like MongoDB Familiarity with scripting languages, including Windows CLI (.bat scripting) and Linux Bash. Experience with JIRA and Confluence for tasks, issue tracking and documentation. Strong debugging and testing skills to ensure software reliability. Experience with source control systems (e.g., GitLab, Github, ...). Ability to work independently with minimal supervision while collaborating effectively in a team setting. Strong written and verbal communication skills to document and present technical concepts. Experience with efficient troubleshooting of production incidents using modern observability platforms (Datadog, New Relic, ...) Fluent in English and French Bonus Points For Experience in the payment industry, including payment processing applications, certification and PCI compliance. Knowledge of embedded device security and encryption standards. Familiarity with OpenSSL, Boost, or other relevant C++ libraries. Understanding of real-time operating systems (RTOS) for embedded systems. Cloud-based API integration experience (AWS, Azure, etc.). Experience working in an Agile/Scrum environment.