Engineering Business Unit Overview:
The charter for Engineering group at Oportun is to be the world-class engineering force behind our innovative products. The group plays a vital role in designing, developing, and maintaining cutting-edge software solutions that power our mission and advance) our business. We strike a balance between leveraging leading tools and developing in-house solutions to create member experiences that empower their financial independence.
The talented engineers in this group are dedicated to delivering and maintaining performant, elegant, and intuitive systems to our business partners and retail members. Our platform combines service-oriented platform features with sophisticated user experience and is enabled through a best-in-class (and fun to use!) automated development infrastructure. We prove that FinTech is more fun, more challenging, and in our case, more rewarding as we build technology that changes our members’ lives.
Engineering at Oportun is responsible for high quality and scalable technical execution to achieve business goals and product vision. They ensure business continuity to members by effectively managing systems and services - overseeing technical architectures and system health. In addition, they are responsible for identifying and executing on the technical roadmap that enables product vision as well as fosters member & business growth in a scalable and efficient manner.
Position Overview:
As a Software Engineer at Oportun, you will play a vital role in achieving the charter of the engineering group to design, develop, and maintain robust software solutions. Working in a collaborative and agile environment, you have the opportunity to work on a diverse range of projects and make a meaningful impact on the lives of our members. You bring relentless passion and commitment to ship a great product to the market. You are curious, creative and constantly think of new ways to improve what we do so that we can fulfill our mission. You have a good understanding of who the customer for your work is, whether internal or external to the organization. Other engineers respect you for the overall quality of your code and Product Managers love to work with you because you understand the roadmap and are always thinking ahead in your design. This role will afford opportunities to independently lead small projects and/or features in our product roadmap and continue your growth towards independently accomplishing complex projects with multiple dependencies.
Responsibilities:
You collaborate with cross-functional teams, including product managers, designers, and other engineers, to understand business requirements and translate them into efficient and scalable software solutions. You design, develop, test, deploy, support and maintain high-quality software applications using industry best practices and modern technologies. You own issues, including initial troubleshooting, identification of root cause and issue resolution/escalation.(Alternatively, to address verbosity, this can be replaced with “You own your code end-to-end.”, but it may not be explicitly clear.) You write clean and maintainable code that adheres to industry coding standards and contributes to the overall stability of our systems. You participate in code reviews and provide constructive feedback to team members to ensure code quality and promote knowledge sharing. You proactively find and address technical debt, inefficient practices/tools and performance bottlenecks and bugs, continuously improving the reliability and performance of our software through building observability and other features to help trouble-shoot/triage issues. You demonstrate proficient usage of tools, techniques and architecture/coding patterns. You have demonstrated you are able to understand trade-offs of various architectural and design choices. Your solutions are focused on solving the needs of your customer. You stay up-to-date with emerging technologies and industry trends, and proactively propose and implement innovative solutions to enhance our products and services through continuous evolution and refinement of current tools and applications.
Qualifications:
Minimum of 3+ years of experience preferably 5 years of related experience with a Bachelor's degree. Proven track record of delivering high-quality software solutions in a timely manner. Strong problem-solving and analytical skills, with a passion for tackling complex technical challenges. Solid understanding of data structures, algorithms, and software design principles. Strong proficiency in Java, Micro services, Spring boot, Spring Framework, RESTful APIs, Hibernate Experience with relational databases like MySQL, MariaDB and SQL Experience in working with version control systems, such as Git. Thorough knowledge in OAuth2 Excellent communication and interpersonal skills, with the ability to collaborate effectively in a team-oriented environment. Ability to work independently with minimal help. Ability to quickly learn new technologies and apply them as and when needed Strong Unit and integration testingDesired:
Experience with cloud technologies, preferably AWS or Azure, is desirable. Experience in working on Authentication and Authorization with any Identity Providers Experience in automation with Karate Framework Knowledge/experience in working with DevOps/CICD
#LI-REMOTE
#LI-GK1