Senior Software Engineer

Logo of Oportun

Oportun

πŸ“Remote - India

Job highlights

Summary

Join Oportun as a Senior Software Engineer and leverage your technical expertise and strategic thinking to guide the team in architectural decisions, mentor senior engineers, and contribute to the evolution of our technology stack. You will be the go-to person for multiple areas, providing insight to product and design leads. This role involves leading and contributing to the design and implementation of large projects, potentially leading multiple teams. You will be a technical thought leader, mentoring team members and providing feedback to engineering managers. You will advocate for efficient technologies and processes, conduct code reviews, and identify opportunities for improvement. This position requires a proven track record of delivering high-quality software solutions in a leadership capacity.

Requirements

  • 6+ years of related experience with a Bachelor's degree; or a Master's degree with an equivalent combination of education and experience
  • Proven track record of delivering sophisticated software solutions in a leadership capacity with high quality
  • Exceptional problem-solving and analytical skills, with a passion for tackling complex technical and business problems. challenges
  • Mastery over data structures, algorithms, and software design principles
  • Demonstrated experience in web application development, Java, Micro services, Spring boot, Spring Framework, RESTful APIs, Hibernate
  • Ability to quickly learn new systems/requirements, and create POCs and develop code
  • Experience in relational databases like MySQL, MariaDB and SQL
  • Solid grasp of version control systems, such as Git
  • Knowledge in OAuth2
  • Proven ability to mentor and lead a team of engineers, fostering a collaborative and supportive work environment
  • Excellent communication and interpersonal abilities, with a track record of effectively collaborating in a team-oriented environment
  • Exposure to one of the cloud technologies - AWS/Azure/GCP

Responsibilities

  • Lead the end-to-end delivery of complex software applications, ensuring adherence to best practices and high overall quality standards
  • Create frameworks and abstractions that lessen the workload of other engineers
  • Your documentation and tutorials enable other teams to leverage your work independently
  • Identify and resolve improvements in test coverage for end-to-end business flows across multiple systems (and teams)
  • Introduce new tools, techniques, and coding patterns to other engineers, some of which may be developed by yourself, and drive this change to other teams
  • Drive technical decision-making, contribute to, and sometimes lead, architectural discussions, and propose innovative solutions to address complex technical and/or systemic architectural challenges
  • Collaborate across teams and build systems to address architectural gaps
  • Take ownership of critical projects and initiatives, providing project leadership, and ensuring successful delivery through effective project management and communication
  • Engage with stakeholders across the group, understanding their needs and working through the complexity and conflicting goals
  • Provide a clear and concise explanation of business strategy, technical concepts, designs or implementation to a non-technical audience
  • Collaborate closely with product managers, designers, and fellow engineers to gather and translate business requirements into efficient and scalable software solutions
  • Have a track record of leading cross-team efforts that deliver meaningful results across engineering, product, and/or design
  • Work through technical, organizational and scheduling complexity to align teams and deliver results in a positive way for the people and teams involved
  • Your interactions build trust and speed at scale into our organization
  • Be the technical thought leader of the team, and provide necessary guidance and mentorship to senior team members whenever required
  • Play the key technical counterpart to an engineering manager with a larger team; you can provide effective feedback to engineering managers at all levels to identify and help address gaps in their teams
  • Successfully advocate for technologies and processes that make multiple teams more efficient
  • Conduct rigorous code reviews, offering valuable feedback to maintain code quality, performance, and maintainability
  • Continuously identify opportunities for process improvements and efficiency gains within the software development lifecycle
  • Stay informed about emerging technologies, industry trends, and best practices, and proactively introduce relevant advancements to enhance our products and services

Preferred Qualifications

  • Experience with cloud technologies, preferably AWS or Azure, is highly desirable
  • Experience in automation with Web Driver IO
  • Knowledge/experience in working with DevOps/CICD

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.