Staff Software Engineer - Backend (GraphQL/API Platform) - Austin, TX (Hybrid)

Other Jobs To Apply

No other job posts for this day.

About the position

Since H-E-B Digital Technology's inception, we've been investing heavily in our customers' digital experience, reinventing how they find inspiration from food, how they make food decisions, and how they ultimately get food into their homes. This is an exciting time to join H-EB Digital-we're using the best available technologies to deliver modern, engaging, reliable, and scalable experiences to meet the needs of our growing audience. As a Staff Software Engineer, you'll provide end-to-end support to applications and identify ways to improve codebases, solutions to complex problems, and effectively propose paths forward to drive outcomes. You'll make recommendations on overall application system designs, architecture, security, scalability, reliability, and performance. Once you're eligible, you'll become an Owner in the company, so we're looking for commitment, hard work, and focus on quality and Customer service. \"Partner owned\" means our most important resources-People- drive the innovation, growth, and success that make H-EB The Greatest Omnichannel Retailing Company. Do you have a: HEART FOR PEOPLE… skills to serve as technical authority and coordinate work for a group of engineers? HEAD FOR BUSINESS… expertise to make sound, mature technical judgments that result in significant impact? PASSION FOR RESULTS… drive to deliver sweeping technical initiatives?

Responsibilities

  • Design, build, and develop the Api Proxy and core GraphQL platform, including the router, schema workflows, and supporting code and infrastructure.
  • Help take observability and tooling to the next level for the developer experience for HEB engineers.
  • Collaborate with multiple engineering teams (backend, web, mobile) to find solutions that improve developer productivity.
  • Help provide tools to improve critical HEB product surface areas' business metrics such as latency, costs, and issues.
  • Mentors / leads engineers, drives larger initiatives, and enables others to execute against team goals. Expert on team services and knowledgeable about adjacent services. Influences other teams
  • Sets goals and standards within team and influences within the organization. May own initiatives that span multiple teams. Proactively seeks out opportunities to help others grow.
  • Drive performance with the API by identifying bottlenecks, tuning queries, and implementing caching strategies to ensure peak performance.
  • Contribute to long-term planning, researching new technologies and brainstorming ways to improve our platform's architecture and performance.
  • Reviews epics critically and ensures they're appropriately broken down and prioritized with crossteam dependencies identified
  • Writes production-ready code and tests that meet acceptance criteria, are easily testable, documented, easily understood by other developers, and account for edge cases, security, and errors. Creating, configuring, and supporting build and deployment pipelines.
  • Leads others in coding / configuration / maintaining / testing / debugging existing or new systems; delivers quality features and bug fixes that align with our development process
  • Capable of leading team on effective production support or on-call, debugging, and troubleshooting highly complex issues within team services. Able to identify a path to resolution for most issues for team services.
  • Ensures cross-team dependencies are identified and well understood by all teams involved and other relevant stakeholders
  • Works across teams to foster a culture of priority setting and urgency in alignment with organizational strategy
  • Drives collaborations with peer Product, Engineering, and Design teams to inform the platform roadmap as well as taking on metrics and tracing scaling challenges that push the boundaries of our existing observability infrastructure.
  • Owns risk, change, and uncertainty across multiple teams
  • Ability to proactively identify ambiguity and drive teams towards mitigating potential issues
  • Considers how ambiguity in their team's work might affect, or be affected by, the work of other teams
  • Works on technology projects / tasks with no guidance
  • Manages cross-team commitments, their progress, and roadmap to delivery. Anticipates and communicates blockers, delays, and cost ballooning across teams, before they require escalation.
  • Ensures expectations across teams and stakeholders are clarified between all parties involved
  • Understands the architecture, design and integration landscape of multiple H-E-B systems or services
  • Writes production-ready code and tests that meet acceptance criteria, are easily testable, documented, easily understood by other developers, and account for edge cases, security, and errors
  • Understands adjacent domains and the design and integration landscape of multiple H-E-B systems or services as they affect their team
  • Expert understanding of software design, architecture, security, scalability, reliability, and performance and capable of architecting and designing at the portfolio, domain, or end-to-end solution level
  • Introduces new technologies that have ROI / influence. Stays ahead of technology trends and evolution with an eye to long term sustainability and growth of existing and new systems / services
  • Supports engineers in optimizing product- ready code
  • Designs, develops, tests, and deploys software
  • Able to lead strategically important projects involving multiple teams
  • Aligns teams toward simple, effective designs
  • Leads production support, on-call, debugging, and troubleshooting of issues impacting multiple teams and services
  • Drives adoption of system health based on site reliability engineering best practices
  • Enacts changes to team monitoring practices that improve system and team health
  • Creates documentation and training related to technology stacks, standards, and systems / services across multiple teams
  • Provides constructive criticism to stakeholders across the organization Teamwork and Collaboration
  • Helps to break down barriers across teams
  • Looks for opportunities to share learnings and learn from others
  • Seeks to improve communication and collaboration between teams by building relationships and finding common ground
  • Recommends and drives changes to processes and tools across teams at the group / department level based on industry standards, patterns, and best practices
  • Approaches problem-solving holistically and considers solutions through a combination of technology and process
  • Identifies best approach to improve technical solutions to complex problems and effectively proposes paths forward to drive outcomes
  • Capable of leading large initiatives with multiple engineers including design, architecture, and delivery of multiple complex features across multiple systems / services

Requirements

  • A Computer Science degree or comparable formal training, certification, or work experience
  • 7+ years of experience in software development − Expert in in multiple programming languages, technologies, and frameworks
  • Expert knowledge in system and data architecture, data modeling, and design and capable of architecting and designing at the application or service level using well-accepted design patterns
  • Ability to review platform designs for strength of engineering solutions, namely performance, sustainability, and iterative development potential
  • Experience with common software engineering tools (e.g., Git, Jira, Confluence)
  • Extensive experience successfully producing consistent, high-quality results
  • Expert knowledge of Computer Science fundamentals: data structures, algorithms, design patterns, system architecture and design patterns
  • Expert understanding of the full SDLC and frameworks (Agile, Scrum, Kanban, etc.)
  • Experience with containerization technologies such as Docker.
  • Experience with CI/CD pipelines and tools such as Jenkins, Gitlab, or Github Actions.
  • Experience with both SQL and NoSQL databases, with experience in query optimization.
  • Proficiency in working cross-team with product and cross-function engineering such as web and mobile.
  • Travel by car or plane with overnight stays
  • Work extended hours; sit for extended periods
  • Work rotating and on-call schedules, as needed

Nice-to-haves

  • expertise with GraphQL and similar API specs like REST, AWS, Observability (tracing, telemetry, alerts), Networking, Typescript and Nodejs.
Back to blog

Common Interview Questions And Answers

1. HOW DO YOU PLAN YOUR DAY?

This is what this question poses: When do you focus and start working seriously? What are the hours you work optimally? Are you a night owl? A morning bird? Remote teams can be made up of people working on different shifts and around the world, so you won't necessarily be stuck in the 9-5 schedule if it's not for you...

2. HOW DO YOU USE THE DIFFERENT COMMUNICATION TOOLS IN DIFFERENT SITUATIONS?

When you're working on a remote team, there's no way to chat in the hallway between meetings or catch up on the latest project during an office carpool. Therefore, virtual communication will be absolutely essential to get your work done...

3. WHAT IS "WORKING REMOTE" REALLY FOR YOU?

Many people want to work remotely because of the flexibility it allows. You can work anywhere and at any time of the day...

4. WHAT DO YOU NEED IN YOUR PHYSICAL WORKSPACE TO SUCCEED IN YOUR WORK?

With this question, companies are looking to see what equipment they may need to provide you with and to verify how aware you are of what remote working could mean for you physically and logistically...

5. HOW DO YOU PROCESS INFORMATION?

Several years ago, I was working in a team to plan a big event. My supervisor made us all work as a team before the big day. One of our activities has been to find out how each of us processes information...

6. HOW DO YOU MANAGE THE CALENDAR AND THE PROGRAM? WHICH APPLICATIONS / SYSTEM DO YOU USE?

Or you may receive even more specific questions, such as: What's on your calendar? Do you plan blocks of time to do certain types of work? Do you have an open calendar that everyone can see?...

7. HOW DO YOU ORGANIZE FILES, LINKS, AND TABS ON YOUR COMPUTER?

Just like your schedule, how you track files and other information is very important. After all, everything is digital!...

8. HOW TO PRIORITIZE WORK?

The day I watched Marie Forleo's film separating the important from the urgent, my life changed. Not all remote jobs start fast, but most of them are...

9. HOW DO YOU PREPARE FOR A MEETING AND PREPARE A MEETING? WHAT DO YOU SEE HAPPENING DURING THE MEETING?

Just as communication is essential when working remotely, so is organization. Because you won't have those opportunities in the elevator or a casual conversation in the lunchroom, you should take advantage of the little time you have in a video or phone conference...

10. HOW DO YOU USE TECHNOLOGY ON A DAILY BASIS, IN YOUR WORK AND FOR YOUR PLEASURE?

This is a great question because it shows your comfort level with technology, which is very important for a remote worker because you will be working with technology over time...