The Director of Software Engineering is a strategic role at Dark Owl, overseeing software development and delivery for our data and delivery systems. The Director shall be responsible for modernizing and scaling our data and delivery architecture that comprises ElasticSearch, API, Vision UI, and Data delivery platforms. You will manage a team of highly skilled software & quality assurance engineers that are remote and distributed geographically.
The Director shall work with various functional teams such as sales, marketing, product, customer success, collections, and systems engineering teams to bring unique products to market.
The individual needs to be a self-starter with proven experience in delivering large-scale and B2B SaaS products in organizations ranging from startups to scaled enterprises. The ability to think big and break down big things into bite-size initiatives will be key to success. Mentoring teams and communicating effectively between technical folks to business stakeholders & to the board level will be vital for success.
This is a full-time position on the Software Engineering & Technology Team, with a flexible/remote work environment.
Duties/Responsibilities
- Architecture: Ensure that software systems are built for scale. Create and maintain cloud-native architecture for quality, performance, maintainability, scalability, security & reliability. Create high-level systems, subsystems, services with clearly defined interfaces, data models, and documentation.
- Technology: Adopt, refine, and operate various custom solutions, open-source software, and commercial software such as Amazon AWS. Create technology standards and best practices. Follow emerging trends in cloud, serverless technologies, machine learning, and data science.
- Road mapping & goal setting: Create & maintain a technology roadmap to handle product development, customer needs & reducing tech debt. Create SMART goals for self and teams. Break down primary goals into bite-size tasks. Report on KPI and ensure teams accomplish mutually agreed upon goals monthly, quarterly, and yearly.
- Software development: Create a software development lifecycle with a focus on agile development, test automation, & continuous integration/ delivery (CI/CD). Work with product owners, developers, dev-ops, & analysts to improve speed & quality of delivery. Ensure code & related artifacts are versioned, managed, & adhere to various security, compliance & audit standards.
- Team management: Manage a team of software engineers with varying levels of skills and experience who are remote and geographically distributed. Create career paths, cross-training, and certifications for professional and personal growth.
- Budgeting: Support various financial, budgeting, audit, and cost justifications. Ensure efficiency in costs as it relates to staff, training, cloud expenses & various software licenses.
- Communication: Communicate clearly & copiously via various modes of communication through virtual meetings, email & messaging, and in-person events. Achieve cadence and consistency in daily standups, sprint sessions, team meetings, customer meetings, and strategy sessions. Create constant and timely feedback for continuous improvement.
Required Skills/Abilities
- Technical skills: Strong background in software engineering with a minimum of 10 years’ experience. Proficiency in Java, Python, SQL, AWS, Elastic Search, Big Data, API, micro-services, and web technologies. Experience in object-oriented technologies, design patterns, refactoring & asynchronous messaging frameworks.
- Delivery: Strong project management and delivery skills. Ability to prioritize tasks, set and meet deadlines, reduce issues & costs—expertise in Agile development & managing scrum teams.
- Entrepreneurial mindset: Ability to work in a low-structure to the no-structure environment. Prototype to production in budget-constrained environments. Increase the velocity to value for customers.
- Communication: Strong communication & relationship building skills: the ability to convey complex technical and non-technical concepts in speech & writing with clarity and simplicity. Resolve conflicts logically and professionally.
- Team building: Attract and retain top talent. Manage performance & groom next-level leadership with career pathing & succession planning. Build capacity, delegate effectively & reduce single points of failure.
- Leadership: Self-starter with a bias towards action. Resolve conflicts early and quickly. Build trust by delivering what you say. Have humility in words and action. Be a lifelong learner with a growth mindset for self and teams.
Education and Experience
- Bachelors or master’s degree.
- Minimum 10 years of experience in Software Engineering leadership, software engineering, SaaS startups, or related fields.