Job Description
About InvoiceCloud:
InvoiceCloud is a leading provider of online bill payment services. Founded in 2009, the company has grown to be one of the leading disruptors in the cloud-based electronic bill presentment and payment (EBPP) space, helping institutions put customer experience first. By switching to InvoiceCloud, clients can improve customer engagement, loyalty, and efficiency while reducing churn and missed payments in the process. With over 50 million payments processed annually, InvoiceCloud is one of the most secure, innovative, and inclusive fintech solutions in the market. To learn more, visit www.InvoiceCloud.com.
The Software Engineering team at Invoice Cloud is dedicated to the design, build, support and innovation of the foundational software platform supporting the entire SaaS customer engagement, e-billing, and payment platform used by thousands of businesses and millions of customers. The Senior Software Engineer will provide key technical leadership in the team’s ongoing architectural evolution, development, and maintenance of the core platform focusing on payer & biller facing product solutions. This is an ideal opportunity for someone who is passionate about building delightful customer experience products in a highly scalable, quality-focused, and secure manner, leveraging agile principles and values, test driven development and continuous integration and deployment. We are looking for a strong business and technical problem solver, with a deep understanding of modern programming best practices, cloud-native technologies, and scalable enterprise architectures.
Outcomes
First 90 days
- Understand existing engineering processes around source control, development, testing and devops
- Become familiar with key systems design, code and operational processes.
- Begin active involvement with major projects.
- Demonstrate ability to support, modify and add new functionality to the current software applications.
- Begin participation in architecture and agile transformation initiatives
Ongoing
The Senior Software Engineer will have a broad set of responsibilities including the following:
- Play a critical role in the architecture, design, development, and technical decision making of applications in scope.
- Write well-designed, well-tested, readable, maintainable code.
- Participate in code reviews to maintain code quality and distribute knowledge.
- Help lead large projects from idea to execution.
- Ensure application releases occur regularly, timely and with high quality.
- Partner with designers and product managers to scope, design, define, measure, and iteratively deliver innovative experiences to our payers and billers.
- Contribute to the design and implementation of our design system.
- Build complex, responsive, modern, and consistent web applications.
- Implement front-end best practices.
- Build trusting relationships and collaborate within and across all internal teams.
- Encourage a highly communicative culture that ensures open, transparent, and consistent exchange with key stakeholders.
- Play an active role in continuous improvement of our lean product development and delivery processes.
- Champion agile best practices around continuous integration, test-driven development, and continuous deployment.
- Perform periodic on-call support for after-hours deployment/maintenance windows.
- Coach, mentor and help peers.
- Report progress on work items as it happens, via work item notes, and as requested.
Competencies
- Attention to detail
- Problem solver
- Efficient
- Forward thinking
- Committed
- Proactivity
- Coachable
- Accountable
Who We Seek:
- Solid technical background in enterprise software development, preferably within financial services or FinTech (banking, lending, payments).
- Understanding of design system implementations.
- API development
- 7+ years of experience with technologies we currently use
- .Net framework (C#, ASP.NET (WebForms, MVC, WebAPI), Visual Studio
- T-SQL, ADO.NET, SQL Server
- Azure DevOps
- JQuery, JavaScript, HTML, and CSS
- Experience with Microsoft Azure or similar cloud technology vendors
- Experience with agile best practices and related methodologies (Scrum, Kanban etc.).
- Experience with transactional databases and caching systems.
- Experience with test-driven development (unit and integration testing) and continuous integration.
- Experience with and understanding of best practices in building public, internal APIs and integration frameworks.
- Experience with scalable, distributed systems using microservices and event-driven architecture.
- Experience with performance tuning production architecture.
- Understanding of software security best practices.
- Collaborate with both technical and non-technical stakeholders.
- Self-led, capable of working with little direction.
- Skilled communicator with a collaborative spirit.