Senior Software Engineer
As a Senior Software Engineer, you will play a key role in the entire engineering lifecycle from design, documentation, build, test and maintain our SmithRx product suite. You will advocate and bring best practices/methodologies, coding standards and large-scale system design perspectives to our team. We need our engineers to be versatile and driven, display leadership and ownership qualities, and be enthusiastic to take on new challenges as we continue to push technology forward.
What you will do:
- Focus on back-end architecture; designing, developing and maintaining SmithRx product features using various languages such as Golang, GraphQL, and SQL (amongst others), while leveraging full CI and CD to iterate quickly
- Collaborate with stakeholders and technical leads to understand functional and technical requirements to produce high-quality, scalable software and services
- Provide scope and risk estimates for system and feature builds by building technical design documentation
- Continually apply software development best practices, design patterns, testing, automation, tools and technologies.
- Leverage AWS technologies, like API Gateway, SQS, Kinesis, Lambda and Fargate, to handle various types of jobs and batch processing
- Troubleshoot production issues by performing triages for issues that arise, assessing the impact, creating and executing a plan for short-term and long-term mitigation, and performing root cause analysis to prevent future occurrence of issues.
- Coach/mentor junior team members in their assigned engineering projects by reviewing and providing feedback on code developed, and performing design and code reviews
- Work with senior leadership to turn technical vision into a tangible roadmap every quarter
- Be the cornerstone of a collaborative learning culture through mentorship, code reviews, the exploration of new technologies, and other innovations
What you will bring to SmithRx:
- BS or advanced degree in computer science or applicable experience
- 5-8 years of software development experience working on server-side applications, specifically around API servers, third party integrations and data processing
- Experience at a high-growth startup a plus
- Expertise in Go is required
- Proficiency with relational databases such as PostgreSQL, including schema design, SQL tuning, and database monitoring is required
- Demonstrated experience designing and implementing scalable APIs; a solid understanding of design patterns, database design, and testing best practices.
- Working knowledge of GraphQL APIs, CI and CD pipeline, AWS platform, Docker, and Kubernetes a plus
- Positivity; non-dogmatic, team-first attitude
- Flexibility; someone who is responsive and comfortable with ambiguity
- Highly disciplined approach to software design and development and ability to work on features independently (accurately forecast delivery milestones and work with stakeholders to ensure that expectations are met)