> Markdown version of [/jobs/ext/3091612-software-engineer-modernization](https://www.wearedevelopers.com/jobs/ext/3091612-software-engineer-modernization). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Software Engineer, Modernization - **Company:** Origami Risk - **Location:** United States (Remote available) - **Experience:** Experienced - **Salary:** $97,000.0 - $122,000.0 - **Contract:** Permanent contract - **Skills:** .NET Framework, Multitier Architecture, Artificial Intelligence, Amazon Web Services, C Sharp (Programming Language), Cloud Computing, Cloud Engineering, Code Coverage, Software Quality, Information Systems, Command-Query Responsibility Segregation (Software Development), Cursor (Graphical User Interface Elements), Software Design Patterns, Github, Integrated Development Environments, Message Oriented Middleware, Software Engineering, Workflow Management Systems, AWS Cdk, Data Logging, Pulumi, GitHub Copilot, Technical Debt, Backend, Event Driven Architecture, Database Migration, Containerization, AI Platforms, Solid Principles, Information Technology, Apache Kafka, Codebase, Api Design, Restful APIs, Amazon Simple Queue Service (SQS), Terraform, Domain Driven Design, Code Restructuring, Software Version Control, Dynatrace, Api Management, Docker, Legacy Systems, Microservices - **Published:** September 26, 2026 - **Apply:** https://www.builtincolorado.com/job/software-engineer-modernization/11380248?handler=ApplyRedirect ## About the Role * Bachelor's Degree in Computer Science, Software Engineering, Information Systems, or a related field * 3+ years of professional software engineering experience, including demonstrated work on legacy modernization, refactoring, or re-platforming initiatives * Proficiency in .NET and C#, with experience working in both legacy and modern application codebases * Solid understanding of software design principles including SOLID, clean architecture, domain-driven design, and separation of concerns * Experience designing and building RESTful APIs and microservices, with strong instincts for clean, consumer-friendly API contracts * Hands-on experience with cloud-native development on AWS, including one or more of: Lambda, Step Functions, ECS/EKS, API Gateway, SQS/SNS * Familiarity with containerization using Docker and deployment in containerized environments * Experience with version control and collaborative development workflows using Git and GitHub * A demonstrated ability to communicate about technical complexity clearly - to both technical peers and non-technical stakeholders Preferred Qualification: * Experience with AI-assisted development tools such as Claude Code, Cursor, or GitHub Copilot, including using AI for codebase analysis and refactoring acceleration * Familiarity with workflow orchestration using Temporal or AWS Step Functions in a production environment * Experience with database migration tooling such as Flyway and safe schema evolution practices * Experience with infrastructure-as-code tooling (Terraform, AWS CDK, or Pulumi) * Familiarity with event-driven architecture patterns and asynchronous messaging (SQS, SNS, EventBridge, or Kafka) * Experience working in an Agile/Scrum development environment * A strong personal conviction that simple, well-structured systems are a competitive advantage - and a track record of building them ## Description Technical Debt Reduction & Legacy Modernization * Systematically identifies, prioritizes, and remediates technical debt across existing codebases, partnering with Engineering Leads to build and execute a structured modernization backlog. * Refactors and re-platforms legacy .NET and C# applications onto modern, cloud-native architectures - improving maintainability, performance, and scalability without disrupting active product delivery. * Decomposes monolithic systems into clean, loosely-coupled microservices and APIs, establishing clear domain boundaries and reducing interdependencies that slow delivery velocity. * Replaces brittle, over-engineered, or redundant systems with simpler, more sustainable solutions that are easier to understand, test, and evolve. * Uses AI-assisted tooling (e.g., Claude Code, Cursor, GitHub Copilot) to analyze legacy code at scale - accelerating impact analysis, generating refactoring candidates, and producing documentation for undocumented systems. Cloud-Native Re-platforming * Migrates workloads from legacy infrastructure to cloud-native patterns on AWS, leveraging Lambda, containers (ECS/EKS), Step Functions, Temporal, and managed services to reduce operational overhead and improve scalability. * Applies modern software design patterns - including event-driven architecture, CQRS, and domain-driven design - to re-architected systems, positioning them to support future innovation and client scale. * Implements database migration and schema modernization using Flyway, ensuring safe, versioned transitions away from legacy data models. * Builds containerized services using Docker, establishing consistent deployment and runtime environments across development, staging, and production. * Authors infrastructure-as-code using Terraform or AWS CDK to replace manual, brittle environment configurations with repeatable, auditable provisioning. Standards, Simplicity & Scalability * Champions engineering simplicity as a first-class design principle - pushing back on unnecessary complexity and advocating for solutions that are easy for the next Engineer to understand and change. * Establishes and documents patterns for modernized systems, creating reusable blueprints that accelerate future re-platforming efforts and provide a consistent architecture baseline across the Engineering organization. * Instruments modernized systems with observability best practices - structured logging, distributed tracing, and metrics - so that operational visibility improves alongside code quality. * Contributes to and enforce Engineering standards around code quality, testing, documentation, and API design, ensuring modernized systems raise the bar rather than just moving problems. * Designs modernized systems with client scale in mind - ensuring they can support increased load, faster release cadences, and rapid product iteration as the business grows. AI-Augmented Development * Actively integrates AI development tools into your daily workflow to accelerate refactoring, generate test coverage for legacy code, and produce migration documentation. * Uses AI to perform large-scale codebase analysis - identifying duplication, dead code, anti-patterns, and high-risk areas across legacy systems that would take weeks to assess manually. * Partners with the AI Platform & Backend Services team to identify modernization opportunities that can be unlocked by new AI-powered capabilities. * Contributes to team best practices around responsible and effective use of AI-assisted development, sharing techniques that improve team-wide velocity and code quality. Collaboration & Delivery * Works closely with Engineering Managers, Architects, and Product teams to sequence modernization work alongside active feature development, minimizing disruption to product delivery. * Participates in architecture reviews and design discussions, bringing a modernization lens to new initiatives to prevent the introduction of new technical debt. * Contributes to pull request reviews with a focus on simplicity, maintainability, and alignment with modernization standards. * Collaborates with QA, Security, and Infrastructure teams to ensure modernized systems meet quality, compliance, and performance requirements. * Documents architectural decisions, migration patterns, and system changes to build institutional knowledge and reduce dependency on tribal knowledge. ## Related Videos - [Innovating Developer Tools with AI: Insights from GitHub Next](https://www.wearedevelopers.com/videos/1268-innovating-developer-tools-with-ai-insights-from-github-next) - [Docker Compose: Rediscovered](https://www.wearedevelopers.com/videos/1978-docker-compose-rediscovered) - [Why segmenting your infrastructure into tiers makes your infrastructure design better](https://www.wearedevelopers.com/videos/1960-why-segmenting-your-infrastructure-into-tiers-makes-your-infrastructure-design-better) - [Grappling With Clunky Old Software? Start by Understanding What’s Inside!](https://www.wearedevelopers.com/videos/1189-grappling-with-clunky-old-software-start-by-understanding-what-s-inside) - [Bringing AI Model Testing and Prompt Management to Your Codebase with GitHub Models](https://www.wearedevelopers.com/videos/1536-bringing-ai-model-testing-and-prompt-management-to-your-codebase-with-github-models) - [Docker build without Docker](https://www.wearedevelopers.com/videos/100114-docker-build-without-docker) ## Related Articles - [Now is the time for industrialized software development](https://www.wearedevelopers.com/magazine/601-now-is-the-time-for-industrialized-software-development) - [Navigating the AI Shift](https://www.wearedevelopers.com/magazine/629-navigating-the-ai-shift) - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated) - [Why Upskilling And Reskilling is Important For Developers](https://www.wearedevelopers.com/magazine/428-why-upskilling-and-reskilling-is-important-for-developers) - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering)