Senior Software Engineer will design and develop software projects, create and maintain APIs and backend services, and collaborate with cross-functional teams. The role involves owning features from conception to deployment and automating manual processes.
Requirements
- An undergraduate or graduate degree in computer science or equivalent experience.
- 6+ Years experience programming with Java or another Object Oriented Language (C, C++, C#, Python, ect.)
- 4+ Years experience designing, developing and delivering Micro Services
- 2+ Years experience leading and mentoring others
- Strong understanding of Data Structures and Algorithms
- Strong understanding of software development best practices
- Strong understanding of system design (design patterns, reliability and scaling) of new and existing systems
- Experience working in an agile environment
- Understanding of different messaging protocols and format standards and languages (SOAP, REST, XML, JSON, HTML, GraphQL, RPC)
- Experience with Microservices architecture and domain driven design
- Experience implementing effective feature testing
- Ability to come up to speed on our core technologies quickly
- Ability to balance the quality of code and speed of delivery
- Experience with cross-functional feature team development
- Ability to work well in a collaborative environment and listen and learn from stakeholders
- Solution-oriented communicator with strong problem-solving skills
- Collaborate with team on architecture decisions
Benefits
- Discretionary Time Off for all employees, with no maximum limits on time off
- Industry leading health, vision, and dental benefits
- Competitive compensation package
- 16 weeks of fully paid parental leave
- Flexible, hybrid approach to working from home and in the office where applicable
- Focus on wellness and employee health through stipends and dedicated wellness programming
- Purposeful career development programs with reimbursement provided for educational certifications