- Salary
- $190k – $225k
- Location
- , San Francisco, CA,
- Workplace
- Remote
- Type
- Full-time
- Department
- Engineering
- Visa
- Not sponsored
- Source
- RecruiterFlow
Description
Senior Software Engineer — Product Engineering Background
Location
United States or Canada
Fully remote.
Company Stage of Funding
Series C
The company has raised approximately $85 million in funding, backed by leading supply chain technology investors.
Office Type
Remote — United States and Canada
Salary
-
United States: $190,000–$225,000 USD per year
-
Canada: $190,000–$210,000 CAD per year
Equity
Competitive Stock Options
Visa
Not open to visa sponsorship or transfers. Candidates must already be authorized to work in the country where they will be employed.
Employment Type
Full-time
Company Description
This technology company is modernizing Electronic Data Interchange (EDI), the technology businesses use to exchange documents and structured data with trading partners across the supply chain.
Its cloud-based platform replaces legacy EDI infrastructure with a modern API and a pre-connected network of trading partners. The platform embeds AI directly into EDI workflows to automate rule writing, reduce errors, and simplify integrations.
More than 400 companies use the platform to manage over 500 million transactions across 10,000 trading partnerships. Customers range from Fortune 500 retailers to growing direct-to-consumer brands.
The company is backed by leading investors and has approximately 100 employees. Its engineering team is fully remote across the United States and Canada.
The engineering culture is customer-outcome-driven, data-oriented, and AI-forward. Engineers are expected to understand the business impact of their work, make evidence-based decisions, and use AI coding agents to accelerate delivery while maintaining a high bar for technical quality.
The company is looking for a Senior Software Engineer with a strong product engineering background who can lead the design and delivery of complex platform features, solve challenging technical problems, and improve engineering quality across the team. The ideal candidate combines deep software engineering fundamentals with strong product judgment, architectural ownership, and the ability to direct and rigorously review AI-generated code.
What You Will Do
1. Lead Technical Design & Architecture
-
Lead the technical design and implementation of major initiatives and product features.
-
Author technical designs for large projects, applications, and complex systems.
-
Make architectural decisions that account for performance, scale, reliability, and maintainability.
-
Identify the business impact of technical changes and communicate the trade-offs involved.
-
Evaluate existing architectures and identify opportunities for improvement.
-
Guide technical decisions across projects and help establish engineering standards.
-
Ensure solutions address critical business requirements and measurable customer needs.
2. Build & Deliver Product Features
-
Own the design, implementation, and delivery of complex product features.
-
Partner with product and cross-functional teams to understand customer problems and business priorities.
-
Translate product requirements into reliable, scalable technical solutions.
-
Take responsibility for the quality and reliability of the systems you build.
-
Ensure engineering work delivers meaningful customer and business outcomes.
-
Use data and product metrics to evaluate the impact of technical decisions.
-
Balance feature delivery with long-term platform health and technical quality.
3. Solve Complex Engineering Problems
-
Diagnose and resolve challenging problems across distributed systems and application architecture.
-
Design systems that account for performance, scalability, and reliability from the beginning.
-
Identify technical risks and lead efforts to mitigate them.
-
Improve system behavior through instrumentation, monitoring, and data-driven investigation.
-
Evaluate trade-offs between implementation complexity, product impact, and maintainability.
-
Develop solutions that improve the platform's reliability and ability to support customer growth.
4. Use AI Coding Agents Effectively
-
Direct AI coding agents to implement well-defined engineering tasks and complex changes.
-
Break down problems into clear specifications that AI tools can execute effectively.
-
Review AI-generated code with the same rigor applied to code written by teammates.
-
Verify correctness, security, performance, and maintainability rather than relying on generated output at face value.
-
Apply deep knowledge of software engineering fundamentals to identify errors and weaknesses in AI-generated implementations.
-
Develop effective workflows for using AI tools to improve engineering productivity.
-
Exercise independent judgment about when to trust, correct, constrain, or reject AI-generated suggestions.
-
Help improve the team's approach to AI-assisted software development.
5. Maintain a High Engineering Quality Bar
-
Ensure code is reliable, maintainable, well-tested, and production-ready.
-
Review technical designs and implementations critically.
-
Improve code quality, documentation, and shared engineering context.
-
Leave codebases, documentation, and workflows better than you found them.
-
Promote practices that make it easier for other engineers to understand and extend systems.
-
Use metrics and production behavior to validate engineering decisions.
-
Help the team ship faster without compromising correctness or reliability.
6. Mentor Engineers & Shape Technical Direction
-
Mentor other engineers and support their technical development.
-
Provide architectural guidance and help engineers navigate complex implementation decisions.
-
Share knowledge about system design, engineering fundamentals, and effective AI-assisted development.
-
Influence technical direction across projects and teams.
-
Help establish consistent engineering standards and practices.
-
Encourage transparent communication, constructive debate, and knowledge sharing.
-
Lead through technical judgment, ownership, and collaboration.
7. Work Across Product & Engineering
-
Partner with product and cross-functional teams to align engineering work with business priorities.
-
Understand the customer problem and business rationale behind technical initiatives.
-
Use evidence and measurable outcomes to guide decisions.
-
Communicate technical trade-offs clearly to engineering and non-engineering stakeholders.
-
Make reversible decisions quickly when appropriate and adapt as new information emerges.
-
Share work in progress, surface blockers, and keep teammates informed.
-
Take responsibility for outcomes beyond individual code contributions.
Ideal Candidate Background
Experience Requirements — Must-Have
-
Senior-level software engineering experience with a strong product engineering background.
-
Experience designing, building, and delivering complex production software systems.
-
Demonstrated ownership of major product features or technical initiatives.
-
Experience making architectural decisions for systems that must perform reliably at scale.
-
Strong experience solving complex engineering problems.
-
Ability to connect technical decisions to customer outcomes and business impact.
-
Experience collaborating with product and cross-functional teams.
-
Strong engineering judgment and the ability to review complex code critically.
Technical Requirements — Must-Have
-
Strong software engineering fundamentals.
-
Experience with backend services, APIs, and application architecture.
-
Experience with distributed systems and microservices.
-
Ability to reason about system performance, scalability, reliability, and maintainability.
-
Strong technical design and code review skills.
-
Ability to assess implementation correctness and technical trade-offs.
-
Ability to work effectively with AI coding agents and rigorously validate their output.
Product Engineering Requirements
-
Experience delivering customer-facing product features.
-
Ability to understand customer problems and translate them into technical solutions.
-
Product judgment that connects engineering work to measurable outcomes.
-
Experience balancing delivery speed with system quality and long-term maintainability.
-
Comfort collaborating closely with product and cross-functional partners.
-
A customer-outcome-driven mindset rather than focusing only on shipping code.
AI-Assisted Engineering Requirements
-
Comfortable using AI coding agents as part of everyday engineering work.
-
Ability to define clear specifications and break down complex tasks for AI tools.
-
Strong code review and verification skills.
-
Ability to identify incorrect, incomplete, insecure, or poorly designed AI-generated implementations.
-
Sound judgment about when AI tools are useful and when their output should be corrected or rejected.
-
Understanding that AI-assisted development increases the importance of engineering fundamentals and technical judgment.
Architecture & Ownership
-
Ability to lead technical design for large projects and applications.
-
Experience planning for performance, scale, and reliability.
-
Ability to identify technical risks and manage the business impact of changes.
-
Experience taking ownership of complex systems and technical initiatives.
-
Ability to guide other engineers and influence technical direction.
-
Strong accountability for production quality and customer outcomes.
Soft Skills
-
Strong communication and collaboration.
-
Ability to mentor engineers and provide constructive technical feedback.
-
Comfort sharing work in progress and discussing ideas openly.
-
Data-driven decision-making and willingness to validate assumptions.
-
Bias toward action and comfort making reversible decisions.
-
Ability to disagree constructively and commit to decisions once made.
-
Strong ownership mindset and consideration for the broader team's productivity.
Nice-to-Have Qualifications
-
Experience with Node.js and TypeScript.
-
Experience with React and NestJS.
-
Experience with distributed systems and microservices at scale.
-
Familiarity with RabbitMQ or Kafka.
-
Experience with relational and non-relational databases.
-
Experience with AWS, CI/CD, and modern development workflows.
-
Familiarity with Nx or monorepo development.
-
Experience building API-driven products or enterprise software.
-
Experience in AI-forward engineering teams where coding agents are integrated into development workflows.
-
Experience in EDI, supply chain technology, or B2B data exchange.
Compensation & Benefits
-
United States base salary: $190,000–$225,000 USD per year.
-
Canada base salary: $190,000–$210,000 CAD per year.
-
Equity: Competitive stock options.
-
Work model: Fully remote across the United States and Canada.
-
Employment: Full-time.
-
Benefits: Health insurance and unlimited PTO.
-
Opportunity to contribute to a growing enterprise software platform.
-
Opportunity to work in an AI-forward engineering environment.
-
High technical ownership, architectural influence, and opportunities to mentor other engineers.
Why Join
-
Shape a modern enterprise platform: Help modernize how businesses exchange data and connect with trading partners.
-
Work in an AI-forward engineering culture: Help direct AI coding agents while maintaining rigorous engineering standards.
-
Own complex technical initiatives: Lead architecture and delivery for significant product features.
-
Connect engineering to customer outcomes: Build solutions grounded in real customer problems and measurable business impact.
-
Influence technical direction: Mentor engineers and help establish engineering practices across the team.
-
Work remotely: Collaborate with a distributed team across the United States and Canada.
-
Build at scale: Contribute to a platform supporting hundreds of companies and large volumes of business transactions.