Senior Software Engineer
Ad HocAbout the role
About this position:
- This is a fully remote position.
- Bachelor's Degree - Business Administration, Business Management, Computer Science, Information Systems, Information Resource Management, Industrial Engineering, or related fields.
- 5 years experience Substitutes: Certifications in relevant technology plus 3-5 years of relevant experience; or 5 to 7 years of relevant experience may be substituted for education
- Minimum 5 years’ experience developing consumer-facing web applications, services, and APIs.
- Experience working with Apache Kafka in a production environment.
- Familiarity with event-based architecture and related best practices.
Work on things that matter
Ad Hoc is a digital services company that helps the federal government better serve people. Our teams use modern, agile methods to design and engineer government systems that connect Veterans with services, bring affordable health care to millions of people, and support important programs like Head Start. And as we work to make critical government services intuitive, accessible, and human-centered, we’re also changing how the government thinks about and uses technology. If you thrive on change, want to help close the gap between consumer expectations and government services, and can see the possibilities in ambiguity, then we want you here with us.
What matters most
Ad Hoc operates according to our commitment to inclusivity, acceptance, accountability, and humility. We aren’t heroes. We believe in missions larger than our individual selves and leave our egos at the door, learn from our mistakes, and iterate in order to better serve the people in our country. We prioritize building teams that represent the diversity of the people our government serves. We love the challenge of government-size projects. We want to bring skills to federal agencies, help them better meet the needs of their users, and close the gap between consumer expectations and government.
Built for a remote life
Ad Hoc is remote-first and remote-always. We’ve designed our culture, communications, and tools to support a nationwide distributed team since the beginning. Being remote by design allows Ad Hoc to be thoughtful and intentional about creating diverse teams and supporting them with a work environment that fits their lives. With a generous PTO policy and Slack channels for every interest (from birding to space nerds to parenting) our culture embraces the things happening in your life. Maybe you need to adjust your schedule to care for your family or take a bike ride. At Ad Hoc, that’s embraced.
What you’ll do
As an Ad Hoc Senior Software Engineer, Full Stack Engineer, you’ll be part of a cross-functional team, working closely with stakeholders, product managers, designers, and other engineers. We’re looking for an engineer to help our teams deliver the very best digital services for the public.
A Senior Software Engineer, Full Stack is capable of addressing ambiguity and solving complex problems without technical assistance or supervision (though this will generally be available). They have expert-level capabilities in at least one major technology stack. They mentor and guide more junior engineers through the development process, including debugging and new skills acquisition. They communicate with stakeholders, other teams, and partners to generate, assess, and execute on product development or integration requirements. Their experience in the field can be used to effectively evaluate and communicate tradeoffs between implementation complexity and other technical and non-technical costs.
Our ideal Full Stack Software Engineer is equally comfortable with frontend and backend development. On the front end, they write accessible, maintainable, and performant code. They also know how to build large-scale production systems on the back end with well-structured, tested, and secure code, with little feedback or guidance. They’ve designed and implemented reliable and maintainable APIs. They can articulate how the thing they've built fits into a larger ecosystem. They’re not afraid of large, complex problems. They take an active role in planning and delivery efforts, drawing on their experience to suggest better approaches or alternatives.
- Shipping software that impacts the lives of millions of people.
- Using modern programming languages and frameworks to build scalable services that gracefully integrate with legacy systems.
- Working with our own APIs and third-party APIs to build amazing, effective digital services.
- Using unit and integration testing to ensure systems work as intended.
- Helping us continuously, iteratively improve.
What we hope yo
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s