Software Engineer
THE OPPORTUNITY
Kipsu is hiring a back-end-focused, but full-stack capable, Software Engineer to join one of our cross-functional delivery teams in Minneapolis. You'll be part of our Services practice, the engineers who build the server-side applications, APIs, and data layer behind our platforms.
The team is currently building Kipsu's next-generation identity and access management system: the services that handle sign-in, enterprise single sign-on, and permissions for every Kipsu user. Team focus will shift over time as priorities change, so we're looking for someone who enjoys learning new parts of a system as much as going deep on one.
You'll work across our technology stack: Typescript, React, PHP, Kotlin, and more - ship features end to end, and help the team make sound technical decisions as we modernize the platform.
WHAT YOU'LL DO
- Build complete features independently, from request handling and business logic through data persistence.
- Design and build well-structured REST APIs with clear resource models, consistent error handling, input validation, and documentation other teams can integrate against.
- Write efficient SQL, manage schema migrations safely, and use transactions and Redis caching where they fit.
- Apply secure design patterns as a matter of course, especially authentication, authorization, and input validation, which are central to identity work.
- Author technical designs for features and moderately complex work, covering integration points, testing, observability, and deployment.
- Instrument your code with structured logging and meaningful metrics, and design for failure when a dependency is slow or unavailable.
- Investigate and resolve bugs and production issues independently, finding root cause rather than patching symptoms.
- Write unit tests that cover edge cases and failure paths, and add coverage to existing code as you work in it.
- Review teammates' pull requests promptly and give feedback that improves the code.
- Work within our CI/CD pipelines and containerized environments, and troubleshoot build and deployment issues when they come up.
We encourage the use of AI coding assistants and agents throughout your day-to-day work. You will stay accountable for everything you ship, so you must review, test, and understand what a tool produces.
WHAT WE'RE LOOKING FOR
What you bring
- 3+ years of professional software engineering experience, with most of it on the back end.
- Hands-on experience full-stack experience in application development. You don't need to know our exact stack, but you need to have shipped code to production.
- Working experience with relational databases (MySQL, PostgreSQL, SQL Server, or similar): writing joins and aggregations, reasoning about query performance, and making schema changes.
- Experience building or consuming REST APIs, including HTTP methods, status codes, and error handling.
- A habit of writing unit tests and debugging systematically.
- Familiarity with Git, pull-request-based code review, and CI/CD workflows.
- Clear written and verbal communication. You raise blockers early, ask good questions in planning, and follow through on commitments.
- Curiosity and adaptability. You pick up new languages, codebases, and domains quickly, and you're comfortable when team priorities change.
Nice to have
- Production experience with PHP and/or Kotlin (or another JVM language), TypeScript, React, React Native, Node
- Experience with identity and access management: OAuth 2.0, OpenID Connect, SAML, enterprise SSO, or role-based authorization.
- Experience working in a large, long-lived codebase while new services are carved out of a monolith.
- Exposure to messaging and asynchronous patterns (queues, pub/sub, event-driven workflows).
- Experience with Redis or other caching layers, including cache invalidation trade-offs.
- Experience with Docker, cloud infrastructure, or infrastructure-as-code such as Terraform.
- Experience with observability tooling: structured logging, metrics, tracing, and alerting.
- Experience building integrations with external partner systems, or working in B2B SaaS.
How you work
- You own outcomes. You break work into small increments, ship working software often, and adjust when priorities change.
- You communicate proactively. You share progress, blockers, and timeline risks without being asked, and you give reasonable estimates.
- You collaborate across functions. You work well with product, QA, support, and other engineering teams, and you listen before you respond.
- You connect your work to the bigger picture. You understand why the team is building what it's building and bring observations from your work back to the practice.
- You're open-minded and eager to grow. You take feedback well, seek out unfamiliar parts of the system, and help raise the bar for the team.
We are proud to offer a competitive suite of benefits including: health insurance, dental insurance, vision insurance, 401K with a company match, unlimited/responsible vacation time, life insurance, flex spending account, and commuter benefits.
The pay range for this role is $80,000-$90,000/year depending on experience.