Senior Software Engineer Lead
Omatic solutions are purpose-built using the direct feedback of our 3,000+ social good customers. With over 80% of nonprofit organizations leveraging 4 or more cloud solutions today, the need for a uniquely tailored integration solution has never been greater.
Omatic is a place where the employees thrive on helping others, both through business goals and personal pursuits. Fun, energetic, and lively are terms frequently used to describe the culture at Omatic, and this is balanced by an undercurrent of hard work and commitment. The team tackles challenges, revels in the process of solving problems, celebrates the wins for our company and our customers, all while existing to empower social good organizations.
What You Will Be Doing:
The Senior Software Engineer will collaborate across multiple teams and stakeholders to drive improvements in Software Development practices at Omatic while delivering new solutions and maintaining existing services in support of Omatic’s business goals. The role will challenge you to:
- Lead the Design, development, and implementation of complex software applications using modern technologies and tools, with a focus on distributed systems and microservices that interact with external APIs
- Lead an agile team toward best practices in continuous improvement and elimination of waste in the flow of software development
- Stay up-to-date on emerging technologies and industry trends and apply them to achieve scalability, fault tolerance, and high performance in Omatic systems
- Collaborate with product managers, designers, customers and other stakeholders to gather requirements and translate them into technical specifications
- Mentor and guide other engineers, fostering a collaborative environment of continuous improvement built on learning and helping each other grow
- Create standards, reviews and measures that ensure code quality, security, performance, and maintainability
- Identify and resolve technical issues, bugs, and bottlenecks in a timely manner and evangelize troubleshooting best practices
What You Will Bring to Omatic:
- A Bachelor's degree in Computer Science, Engineering, or a related field; a Master's degree is preferred, or equivalent experience may also qualify
- Minimum of 5 years of experience in software development, with a proven track record of leading large scale initiatives
- Minimum of 2 years in a technical leadership role
- Demonstrated success leveraging distributed systems concepts, such as scalability, fault tolerance, resiliency and consistency models in commercial software with a strong customer focus
- Experience with specific challenges of SaaS implementations such as: multi-tenant scaling and security, billing and payment, subscription-based models, customer provisioning, product entitlement, customer support tooling, and security and privacy regulations
- Extensive experience with cloud platforms and cloud-native systems including AWS, Azure, Kubernetes
- Experience working with external APIs, implementing rate limiting and flow management, and performing data transformation and enrichment
- Strong understanding of software development life cycle (SDLC) and agile methodologies including proven ability to mentor and guide others
- Excellent problem-solving and analytical skills, with the ability to troubleshoot complex issues and apply solutions based on established patterns and best practices in multi-tenant systems
- Strong communication and teamwork skills, with a demonstrated history of negotiating effectively to lead and inspire a team
- Expertise in more than one commonly used language for containerized microservices and a history of choosing an ideal technology for a specific challenge including software patterns, language, and storage options
- Experience should include some level of C# and JavaScript; Micro-Front-End experience will give you an advantage
- Strong understanding of architecting software for Kubernetes, containerization and microservices including ability to teach concepts and best practices to others
- Familiarity with event-driven architectures and messaging systems like JetStream or Kafka
- Experience implementing highly observable solutions leveraging monitoring, tracing and logging tools for distributed systems and microservices (OpenTelemetry, Prometheus, ELK) to achieve high visibility and ease of management in production operations
- Knowledge of professional software engineering practices for the full software development life cycle including: coding standards, code reviews, source control management, build automation, automated testing, and test data management
- Competitive health/dental/vision insurance, life insurance and short-term disability
- 401K with company match
- Unlimited/flexible PTO
- 12 weeks fully-paid parental leave
- Remote work schedules