Jobtree Logo small
louisville,ky40202
Posted
3 days ago

To see more jobs like this as they come available

Visit the Career page to search more jobs now

Scroll to the bottom to apply

Location -

louisville, ky

Job Description

(click to see jobs for roles related to this one)

We are seeking a Principal Software Engineer who is ready to play a crucial role in designing, planning, and executing our product modernization plans, going from a monolithic desktop application to a SaaS-based cloud-native architecture leveraging microservices and hosted in AWS. A Principal Software Engineer is expected to work closely with stakeholders, peers, and cross-functional teams to translate overall system architecture and product requirements into well-designed and implemented software components. You will take ownership of the implementation of individual software components, with high emphasis on quality, test-driven development, sound software engineering practices, and operational excellence. You will also lead a software engineering team and provide technical oversight, coaching, and mentoring to the rest of the team. ECI's home and building supply software suite (Spruce) is a fully integrated business management solution for small to medium sized businesses. It streamlines operations and drives growth. The software is cloud-based and completely integrated, from purchasing through to delivery. What You'll Do * Be a technical leader on a high-performing team. * Design and develop high quality features which delight our customers. * Support and promote the practices and culture needed to transform our organization to a successful DevOps "you build it, you run it" organization. * Perform on-call duties for all modernized components, user interfaces, or services that your team owns. * Be a champion and example for quality, engineering, and operational excellence. * Plan and deliver the technical evolution of our products to cloud-native SaaS products and services. * Improve the design of current legacy application to permit extension and use of modernized services. * Support and promote a Generative organizational culture. * Plan complex initiatives by breaking them into manageable chunks. * Contribute to test automation and refactoring efforts, including BDD, TDD, performance/scalability testing, resiliency testing, etc. * Collaborate effectively with Engineering leadership, Architects, UX Designers, Product Managers, SDETs, SREs, and other Software Engineers. * Work within a small, agile team leveraging Scrum. * Document key technical decisions and code design specifications. * Participate actively in code reviews and contribute to technical discussions. * Effectively communicate technical challenges and help resolve them. * Keep yourself up-to-date with evolving technologies and apply this knowledge in our technical solutions. * Empathetically help other developers grow. Experience You Need * Bachelor's degree in Computer Information Systems, Computer Science, or related field of study. * 12+ years software engineering experience with distributed applications in production environments. * 8+ years of experience designing/developing/maintaining SaaS products in public cloud environments. * 8+ years of recent experience with .Net or .Net Core (C#). * 8+ years of experience with Python, Bash, PowerShell, GO or equivalent * 8+ years of experience with test-driven (TDD) and behavior-driven (BDD) development techniques. * 3+ years of experience with building, orchestrating, and managing containerized workloads (AWS ECS/EKS, Docker, etc.) * 3+ years with Azure DevOps, GitLab or equivalent. * Deep, expert-level understanding of design patterns and modern software design principles (e.g. SOLID, Twelve Factor, etc.). * Previous experience successfully decomposing a large, monolithic codebase into a modular and well-designed solution. * Familiarity with micro-services architecture and RESTful APIs. * Prior experience with modern monitoring solutions (e.g. DataDog, Dynatrace, AppDynamics, Splunk, Prometheus, Grafana, Open Telemetry) * Extensive experience with Terraform and/or CloudFormation and management of all infrastructure or configuration through code (e.g. IaC). * Hands-on experience with TSQL and NoSQL Data stores. * Thorough understanding of AWS infrastructure and services including but not limited to EKS, ECS, EC2, EBS, S3, CloudWatch, Cloud Trail, API Gateway, ALB, Route 53, Transit Gateway, IAM, AWS Config, etc. * Proficient with Infrastructure as Code, Configuration as Code, GitOps, Continuous Integration, Delivery and Deployment (CI/CD) practices and tools (Azure DevOps, GitHub, Jenkins, Atlantis, Ansible, Packer, CloudFormation/Terraform, etc.). Skills That Set You Apart * AWS - Developer or Solutions Architect Certification * Hands-on experience with Blazor and Webassembly. * Hands-on experience with Azure Dev Ops * Hands-on experience with Data Dog. * Hands-on experience with Istio, AppMesh, and/or similar service mesh architectures. * Hands-on experience with cross-platform mobile development frameworks (e.g. Blazor, Xamarin, etc.) * A background designing for and achieving compliance (ISO27001, SOC2, PCI) * Good understanding of Remote Apps over Remote Desktop Protocol and/or GraphOn etc. Behavioral Competencies * A sense of urgency and a strong bias for action. * Strong communication skills and a natural inclination to collaborate. * Experience leading strong personalities by influence. * Exhibits sound judgement and can make wise decisions despite ambiguity. * Identifies and resolves root causes rather than only treating symptoms. #LI-REMOTE #LI-CV1

Use the apply button below to start the application on our partner site.

Apply on employer site
Find more jobs like this using our Career Search Tool.
Need help with your career search including preparing your resume, networking, company research or even figuring out what kind of job you want? Check out our other career resources.
Need help finding more jobs that might be a good fit for your experience?Click here to evaluate your fit across all the roles on our site at once