Job Title: Software Engineer
Department: Engineering
Reports To: Software Engineer Manager
FLSA Status: Exempt
Job Summary:
As a Software Engineer at Passport, you will be at the center of our efforts to build and/or redesign scalable software solutions for our clients. You will design, develop, test, and debug software, and your efforts will be critical to ensuring we are building and deploying code that meets the ongoing needs of our clients. You will work closely with Product Management, Product Support, and clients to design, and develop software solutions. You will work independently with little supervision, and develop high-quality software that is aligned with client/user needs and business goals. You will also anticipate future challenges and ensure the applications being built are technically sound and scalable in our rapid growth phase.
Responsibilities:
- Contribute to the design and development of high-quality software solutions, following established architecture and project plans.
- Execute tasks within the software development lifecycle, prioritizing effectively to meet project timelines.
- Write clean, efficient, and well-documented code, and contribute to the enhancement of existing codebases.
- Communicate project updates and collaborate effectively with team members.
- Utilize appropriate tools and scripting to automate routine tasks.
- Participate in code reviews, providing and receiving constructive feedback, and debug issues.
- Perform validation and verification testing to ensure software quality.
- Collaborate with internal teams and contribute to cross-functional projects.
- Stay up-to-date with relevant technologies and contribute to maintaining software currency.
- Work with Product, Support, and Service Delivery teams to understand and address business needs.
- Prioritize activities and deliver tasks within provided timelines.
- Seek opportunities to learn from senior engineers and share knowledge with peers.
- Apply strong problem-solving, organizational, and analytical skills.
- Develop and apply knowledge of relational databases in development tasks.
About You:
You have excellent attention to detail and can troubleshoot issues with ease. You are curious, approach every challenge with a solutions-oriented mindset, and know-how to deliver. You can multitask between multiple complex projects and operational requests. You listen, collaborate, take note of alternate viewpoints, and implement the best solution. You are not afraid of changes along the way - you have a chameleon-like ability to adapt to your surroundings and still figure out how to deliver your assignments. You obsess over the details. Simply put, you have it all together - people enjoy working with you, your teammates respect you, and you can juggle it all. You have a passion for finding and architecting scalable solutions - you love understanding how to make systems work, removing dependencies, and promoting strong data architecture to drive a business forward. Nothing slips through the cracks when you're working on your tasks. You thrive in a fast-paced and exciting environment where change is the norm instead of the exception. You're up to date on all of the latest technologies and blogs, and as someone committed to continual improvement, you're excited to join and contribute to the overall software engineering team at Passport.
Qualifications:
- 5+ years of proven software engineering experience, with deep expertise in full software development lifecycles.
- Strong hands-on full-stack development skills, including proficiency in MySQL, DynamoDB, Javascript / Typescript, Node.js, Express or similar and React.
- Expertise in AWS services such as Lambda, API Gateway, S3, ECS, and RDS, along with experience in CI/CD pipelines and infrastructure-as-code tools like CloudFormation, is crucial.
- Experience with QA test automation tools is a strong plus.
- Demonstrated ability to architect and deliver high-quality, scalable software solutions.
- Experience working in Agile environments, with a track record of excellent design and programming.
- Bachelor's Degree in Computer Science or a combination of education and relevant experience