Golang / Go Job: Senior Software Engineer


Senior Software Engineer at Caring.com

Remote β€Ί 100% remote position (in the US)
  (Posted Oct 5 2021)

About the company
Caring.com is the leading online destination for caregivers seeking information and support as they care for aging parents, spouses, and other loved ones. We apply cutting-edge technology to our mission: to help as many seniors and their caregivers as possible through empathetic, expert guidance. We take pride in helping the 45 million U.S. family caregivers find help for their aging family members. Many of our employees have had personal experience with caregiving and are passionate about our mission. We are an agile team that succeeds by marrying rigorous data-driven thinking with real concern, empathy for users, and the quality of their experience. Don't think for a minute that all this talk about aging stops us from having a good time--we're a vibrant group of highly talented, results-oriented types who want to use our time and our brains to really make a difference. We offer competitive salaries, excellent benefits, and a fun, friendly, supportive work environment. Be a part of the booming Senior Care industry and an integral member of our team.

140k - 180k

Job description
We are seeking a talented and experienced Senior Software Engineer to join our high-quality, collaborative product engineering team. Our primary architecture is oriented around small independent services written in Go, using a mix of messaging, gRPC, and GraphQL for communication, depending on the service. Our front ends are written in React and Next.js.

We are currently migrating off of a legacy monolithic architecture primarily written in Ruby on Rails. Legacy front ends are a mix of a variety of technologies.

Our platform runs in ECS on AWS, with MySQL and EventStore as our primary databases, as well as SNS/SQS for the event-driven pieces of our architecture. Our frontends are served statically via S3. We provision our infrastructure using Terraform. Logging and tracing are piped to a logz.io hosted ELK stack, and we use a variety of other tools for monitoring and alerting. Our modern services are continually integrated and deployed using CircleCI.

As part of our Engineering department, you will work within one of our cross-functional teams, each team handling part of our product. Currently, these teams are oriented around persona groups within our ecosystem, but as we grow the overall team, we will form additional product teams around smaller subsets of the products used by these personas. We strongly believe in the 7(+/-2) rule to effective product teams, in order to minimize communication overhead, but provide the cross-functional skills to be effective. All of our product teams have a dedicated Product Owner, and a shared UX resource.

As a team we strongly value growth-minded, collaborative individuals who are willing to stretch themselves and support the team in whatever capacity needed. Thus we favor polyglot engineers, willing mentors, ego-less team players. We do not believe years alone equals experience, rather experience comes through active learning, and thus favor engineers who demonstrate a passion for learning.

As a Senior Software Engineer at Caring, you will:
- Design, develop and maintain our applications and services for maximum resilience, scalability, robustness, and security,
- Adhere to engineering excellence to help us move faster with confidence and quality,
- Play an active role in the architecture to better support our growing needs,
- Actively work to support and maintain our strong engineering culture,
- Share your knowledge and learnings through mentoring, PRs, and internal (and potentially external) presentations,
- Advocate across the entire company the value and benefits of a strong engineering culture and organization,
- Work within a proper scrum environment, providing necessary feedback to the Product Owner and team members to continually improve quality and velocity,
- Work with a diverse group of engineers and product team members

Our Ideal Senior Software Engineer will have:
- Experience writing high scale applications and services in Go, or demonstrated experience writing high scale applications and services in other languages and capacity to learn new languages to proficiency quickly
- Experience using a variety of approaches, (i.e. event sourcing, gRPC, GraphQL) and demonstrated ability to choose the right approach to solve the problem faced
- Demonstrated ability to design solutions that fit the big picture across the entire stack (infrastructure to browser)
- A growth mindset, learner, curious, inquisitive and willing to productively challenge the status quo
- Excellent verbal and written English communication skills
- Ability to operate in an agile environment and still deliver high quality code in a timely manner
- Passion for engineering excellence, and sharing best practices with team members
- Ability to proficiently work within our legacy and modern tech stacks
- A passion for understanding the business domain and user needs to be able to collaboratively drive product improvements

What we can offer you:
- Meaningful work for a fulfilling purpose
- Flexible hours and Paid Time Off policy
- Competitive benefits package – Health, Dental, Vision, Health Savings Account and Pet Insurance
- 401(k) employer match
- Rapid company growth
- Paid caregiver and volunteer days


Company: Caring.com

job info / career page
Linkedin profile
Location: US Remote, 100% Remote

Map of the USA

Skills wanted, in addition to Golang:
aws go graphql grpc mysql
react ruby sns sqs terraform

Not the Go job you are looking for?
Browse all Golang jobs and we're sure you will find a suitable one!
Browse Golang Jobs with similar combinations of skills
Golang jobs with aws Golang jobs with graphql Golang jobs with grpc Golang jobs with mysql Golang jobs with react Golang jobs with ruby Golang jobs with sns Golang jobs with sqs Golang jobs with terraform