About the role:
As a Senior Software Engineer on the Travel team, you will own a wide variety of components of our backend systems. Some of these components include our data ingestion system, GDS integration, APIs, authentication layer, asynchronous job systems, and more.
We will prioritize applications received by July 3rd to ensure timely review and response. While applications may remain open after this date, those submitted later may experience a slower review process.
In the short term, you will:
Become familiar with our code bases, code style, tech stack, development and deployment process, and project management process
Contribute to the system architecture and design process
Give direction and oversight to more junior engineers on implementation of the system design you’re responsible for, as well as being an individual contributor in the execution
Work with a cross-functional team to support development of new features
Refactor, QA, and improve existing code
Write and maintain robust tests to ensure the stability of our systems
In the long term, you will:
Bring creative solutions to projects to support the continual improvement of Going.
Architect, design and develop our travel systems as we pioneer becoming more and more of player in the booking space.
Cultivate relationships across engineering teams within Going so that we continue to build a highly collaborative environment.
Continue pushing for mastery of software engineering.
Be a strong owner, mentor and champion for technical best practices and delivering value to our members.
What you bring to the table:
High ownership: We’re looking for drivers, not passengers. You've demonstrated that you can accomplish complex tasks you're assigned without hands-on oversight and direction.
Intellectual curiosity: You are motivated to try new methods and learn new technologies without direction to do so. You are always thinking of ways to improve existing systems or build better ones.
Great attention to detail: You have a nose for edge cases and can anticipate potential snags when discussing technical solutions.
Balance of refinement and pragmatism: We will lean on you to know when to dial in the perfect abstraction vs shipping simple, working code.
Excellent communication skills: We are a fully remote company that relies heavily on async communication. Staying tuned-in to our communications channels will be integral to your success here.
Resourcefulness: You lean on your experience to drive you to an optimal solution. When you don’t know how to solve a problem, you know how to comprehensively research to find the solution. You are the person that people talk to when they can't figure something out.
Resilience: No one is perfect. You’ve made some mistakes, but you can acknowledge your failures and take full responsibility for them. By making mistakes, you’ve learned to avoid pitfalls and make architectural decisions that allow you to maneuver through challenges of uncertainty and complexity. You demonstrate and promote a culture of accountability and learning, not a culture of blame.
Must have’s:
4+ years professional experience in a complex service oriented ecosystem, with high volume
Programming expertise in both a statically typed and a dynamically typed language
Strong knowledge with linux based operating systems
Strong Knowledge of Relational Database Systems and SQL, as well as other forms of storage (caches, full text search engines, etc)
Strong knowledge of asynchronous job systems (Sidekiq, Celery, etc.)
Strong knowledge of operational fundamentals and debugging complex systems, and usage of systems like APMs (DataDog, etc)
Nice to have’s:
MS/MA in Computer Science or related field of Engineering
Experience maintaining monolithic framework applications (Ruby on Rails, Django, etc.)
Extensive Ruby or Golang experience
Strong knowledge of data structures, software design patterns, relational and non-relational databases
Experience refactoring/rethinking legacy systems
Technologies we use:
Ruby on Rails is our primary web framework
Golang is our primary service layer for travel technologies, using protobuf and gRPC
NextJS is our primary front end development framework
React Native is our app programming language
Postgres and Redis are our primary storage engines
Apache Iceberg and Starburst Galaxy for our data warehouse
Databricks for our ML frameworks
GitHub for source code management
Circle CI for continuous integration
Notion for documentation and collaboration
Jira for project management
Why you might love working here:
The salary for this role starts at $148,732 + equity.
100% remote work environment
Bi-annual team retreats, with past destinations including Vancouver, Punta Cana, and Mexico City. We're heading to Washington DC this fall!
Open vacation policy, with a 15-day minimum
Comprehensive health, vision, dental, and life insurance
401(k) with a 5% match
$750/quarter remote work, wellness, and wisdom stipend
Up to 12 weeks of paid family leave
Meetup stipend when you cross paths with a co-worker
Continuing education & development reimbursement
Challenging problems to solve and an awesome team to collaborate with every single day
We want you to bring your authentic self to work every single day. We accept you for who you are and consider everyone on an equal opportunity basis without regard to ancestry; age; appearance; color; gender identity and/or expression; genetics; family or parental status; marital, civil union, or domestic partnership status; mental, physical, or sensory disability; national, social or ethnic origin; past or present military service; sexual orientation; socioeconomic status; race; religion or belief; hair length; organ donor status. Going is an E-Verify employer.
If you require a reasonable accommodation or assistance for any part of the interview and employment process, please contact us at careers@going.com and let us know the nature of your request.