- Full-time
The Opportunity:
We, at Flywire, are looking for a Software Engineer 2. As a Software Engineer 2, you will be a contributor to our billing and payments product that supports the money movement of hundreds of millions for colleges and universities.
This is a full-stack role that requires a blend of technical proficiency and the ability to navigate a variety of client requirements. You will be expected to work closely with our US based software engineering and product teams while maintaining a collaborative presence with other teams across the globe. We are looking for an engineer who balances a pragmatic design approach with a commitment to building quality, secure, and scalable products.
Key Responsibilities:
- Feature Development: Design, build, and maintain high-quality, testable, and maintainable code within our billing and payments system.
- AI-Leveraged Exploration: Uses AI tools as a force multiplier — for code exploration, test scaffolding, rubber-ducking and assisting in producing production-quality code.
- Quality & Security: Ensure that security, quality, scaling, and performance are never sacrificed for speed.
- Stakeholder Engagement: Communicate effectively across engineering and product teams.
- Collaborative Problem Solving: Participate in solutioning meetings, comfortably debating the pros and cons without ego.
Here's What We're Looking For:
Technical Requirements:
- Java Proficiency: Professional experience in Java development is a must.
- Database Knowledge: Understanding of relational databases (MySQL)
- Core Stack (Nice to Have): Experience with Spring Core, Spring MVC, Spring Batch and Hibernate.
- Front-End Skills: Familiarity with HTML, CSS, JavaScript, and JSP (Java Server Pages).
- Modern Workflow: You must be comfortable using AI-assisted development tools to enhance productivity and writing comprehensive test cases for all new code using JUnit 5 + Mockito + AssertJ.
Your Professional Profile:
- Self-Reliant & Proactive: You are a "figure-it-out" engineer who takes ownership of tasks but knows when to approach leadership with well-formed, insightful questions.
- Adaptable: You have the aptitude to learn new systems or legacy codebases quickly and can manage your own time effectively to meet deadlines.
- Global Collaborator: You enjoy working with diverse teams across different time zones and possess outstanding verbal and written communication skills.
Qualifications:
- 3-6 years of professional experience in application development.
- Proven track record as a Java Developer in a production environment.
- Experience in FinTech or Higher Education sectors is appreciated.
- Familiarity with student billing / tuition workflows is a plus.
- Ability to deliver high-quality code and adapt to a fast-paced, evolving environment.