
Senior Staff Software Development Engineer
WEX
full-time
Posted on:
Location Type: Hybrid
Location: California • Maine • United States
Visit company websiteExplore more
Job Level
About the role
- 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 (preferred)
- Experience with event-driven architecture using AsyncAPI and efficient internal service communication methods (preferred)
- Expertise in working on card payments (ISO8583) and PCI DSS compliance (preferred)
- Expertise in APIs’ scalability (preferred)
- Ability to work on existing codebase, contribute improvements, and adapt to legacy systems’ constraints (preferred)
Benefits
- health, dental and vision insurances
- retirement savings plan
- paid time off
- health savings account
- flexible spending accounts
- life insurance
- disability insurance
- tuition reimbursement
Applicant Tracking System Keywords
Tip: use these terms in your resume and cover letter to boost ATS matches.
Hard Skills & Tools
JavaC#SpringBootRESTful APIsODATA frameworkSQLdata structuresalgorithmsobject-oriented designevent-driven architecture
Soft Skills
problem-solvingwritten communicationverbal communicationcollaborationempathymentoringtroubleshootinganalytical thinkingleadershipcross-functional collaboration
Certifications
Master's degree in Computer ScienceMaster's degree in Software Engineering