Senior Software Engineer, Back End - Platform Squad

US-based remote or SF office

About Abstract
Abstract is a design workflow platform for teams to version, manage, and collaborate on Sketch files. Our company’s mission is to dramatically improve the productivity, transparency and impact of design. Since launching in July 2017, over 5,000 design teams across 75 countries have adopted Abstract, including teams from Cisco, Intuit, Spotify, Salesforce, Instacart, OpenTable, and more.
At Abstract, we are actively working to build a diverse and inclusive organization. Here, diversity includes age, economic class, educational background, ethnic variance, familial status, gender, gender expression, gender identity, marital status, national origin, religious affiliation, sex, sexual orientation, transgender status, or veteran status.
Abstract is headquartered in San Francisco but many of our teams and roles are remote-first (US-based only at this time). If you have a passion for rolling up your sleeves, building new programs, and have a strong, team-player mentality, we’d love to hear from you!
We are actively looking for a Senior Software Engineer to join the Platform Squad. While previous Go experience is preferred, we're more interested in your ability to learn and solve problems. Expertise in similar languages (Java, PHP, Elixir, Erlang, Python, Perl, C#, C++) would also suffice.
What you’ll do:
  • Discuss, plan, and build new features and web APIs. 
  • Diagnose performance issues and improve processing time for key operations. 
  • Triage and fix bugs, often working directly with our customers. 
  • Participate in peer code reviews through pull requests to make sure we're moving fast while also maintaining quality codebases. 
  • Collaborate with fellow engineers and designers building user-facing features to decide how APIs and integrated libraries should work. 
  • Document service architecture and features to share knowledge with the rest of the engineering team. 
  • Work closely with the Infrastructure team to ensure any security concerns are addressed quickly and thoroughly. 
  • Own small-to-large projects of increasing complexity and scope, including code shared across services or areas. 
  • Define and improve best practices and guidelines for your area.
  • Leads other engineers on projects.
  • Participate in our agile methodology (Daily Standups, Sprint Planning, Demos, Retrospectives).
What you’ll bring:
  • Prior experience (at least 3 years) building scalable web applications, preferably in Go. 
  • In-depth understanding of Git's internals. 
  • Curiosity, and a commitment to life-long learning. 
  • A product mindset and a willingness to ask questions in order to improve the product, not only in its technical implementation but also in how well it’s serving the needs of our customers. 
  • The ability to make things happen even when requirements are a little fuzzy. 
  • Ability to clearly discuss and explain complex technical topics. 
  • Commitment to improvement and an understanding of technical trade-offs. 
  • Experience communicating technical concepts to peers, junior engineers, and non-technical audiences. 
  • Enthusiasm for jumping in to diagnose and fix the challenging issues. 
Bonus points if you have:
  • Designed high-volume APIs.
  • Experience developing scalable applications.
  • Experience with distributed computing.
  • Experience working with Git libraries such as go-git.
  • Worked in an environment with microservices or another service-oriented architecture.
  • Designed and built applications with Docker or Kubernetes.
  • Worked on small teams and are comfortable wearing multiple hats.
  • Experience working in an agile environment.
  • Experience working remotely.
  • Mentorship experience.
At Abstract, we offer resources that emphasize personal and familial wellbeing. We provide 99% healthcare coverage, including dental, vision, and life insurance. We offer 10 weeks parental leave, unlimited paid-time off, and flexible working arrangements. Additional perks include dependent care and health care FSA as well as commuter benefits for SF office employees.
To help employees plan for the future, we're able to offer competitive pay and a 401k.
We are a distributed team and we are able to offer US-based remote employment for most roles. We offer travel opportunities for company meetings, team meet-ups, and the occasional conference.
In compliance with federal law, all persons hired will be required to verify identity and eligibility to work in the United States and to complete the required employment eligibility verification form upon hire. Applicants must be currently authorized to work in the United States on a full-time basis; Elastic Projects will not sponsor applicants for work visas. 
As part of our security protocols, offers are contingent on successful completion of a background check.