WEX Inc. is seeking a seasoned Sr. Staff Software Engineer in the Mobility Engineering organization. The role involves designing, developing, and maintaining robust backend services, collaborating with cross-functional teams, and driving engineering best practices to deliver mobility solutions for fleet management and payments.
Responsibilities:
- Respect what came before, and yet influence the org with net new ways of solving problems
- Be comfortable in dealing with ambiguity, and help define problems, and then devise solutions for these problems
- Design, develop, and maintain robust, scalable, and high-performance object oriented code in our backend services
- Design and implement distributed systems including public REST APIs using Java and internal gRPC APIs for inter-service and inter-system communication
- Craft systems designs, lead design decisions, and drive alignment with other senior engineers
- Epitomize writing and generating unit tests, integration tests, end-to-end tests, concurrency tests, load/performance tests
- Analyze existing systems to identify bottlenecks, tech debt, and implement scalability, and stability improvements
- Implement automation for testing, monitoring, healing, and scaling applications, continuous integration and deployment to reduce time to market
- Collaborate with cross-functional teams, including product managers and other engineers, to define and implement new features
- Conduct code reviews (comment, approve, seek revisions, merge), mentor senior engineers, and actively promote engineering best practices
- Dive deep and troubleshoot complex issues, devise fixes, author root cause analysis documents, and ensure lasting performance and reliability
- Conduct objective and comparative analyses of competing technologies to advise the team of pros and cons of a technology solution
- Devise mechanisms to create robust documentation (design docs, run books, change management docs, and readiness plans)
- Design tech strategy for live-site support by designing monitoring systems via code, ensuring rapid incident resolution, and driving continuous improvement
- Drive cross-team projects as a single-threaded-owner (STO) or tech lead, and actively unblock other engineers to make progress
Requirements:
- Master's degree in Computer Science or Software Engineering
- 10+ years of professional experience in software engineering
- Strong understanding of data structures and algorithms, object-oriented design, and problem-solving skills
- Expertise in designing and developing internet-scale services with scalability, availability, security, and reliability design tenets
- Excellent written and verbal communication skills, and a collaborative and empathetic mindset
- Proficiency in backend development, with proficiency expertise in Java or C#, and frameworks like SpringBoot, building and optimizing RESTful APIs, ODATA framework, and SQL
- 12+ years of experience in software engineering
- Experience with event-driven architecture using AsyncAPI and efficient internal service communication methods
- Expertise in working on card payments (ISO8583) and PCI DSS compliance
- Expertise in APIs' scalability
- Ability to work on existing codebase, contribute improvements, and adapt to legacy systems' constraints