As Head of Software Engineering (Smart Contracts) at IO Global, you will be responsible for leading all technical aspects of the Smart Contracts Tribe. You will lead the engineering delivery of these teams/squads to reach objectives and synchronize their work all along the project’s life cycle. You will work closely with our Head of Product to ensure that we set the right technical specifications and requirements, to define and execute on a healthy and progressive product and technical strategy that maximizes efficiency and output for the Tribe.
You will be responsible for leading the delivery of the Cardano Node, Hydra, Cardano Wallets, Cardano backend services and Cardano tools. You and your team will work closely with research, product management, architects, and engineers, and work towards software where we can produce evidence that it meets the requirements. In order to achieve this, you will need to use a wide range of formal and semi-formal methods, including but not limited to, formal specifications, executable specifications and prototypes, simulations, type systems, manual and/or machine assisted proofs, and property based testing.
This is a senior leadership role in IOG where you will have the opportunity to shape the direction of the company as we expand to take on more commercial projects for customers. You will be responsible for ensuring that the Tribe delivers high quality code and engineering outputs based on clear technical requirements, and also to ensure that the Tribe’s standards are high, and that technical debt is managed effectively.
Manage the Smart Contract software engineering team(s)
Ensure the technical feasibility of the project including but not limited to ensuring that our solutions are scalable, sustainable, architecturally sound, and that technical debt is incurred consciously and repaid in a reasonable time.
Assist the Product team to ensure software meets business requirements
Propose and negotiate project requirements with the Product Owners
Ensure the delivery of products as defined and in time in line with business objectives
Contribute technical and systems design expertise to assist in the architectural design, development, implementation, and testing of software.
Work on technical strategy and roadmaps, regularly assessing the technical state of squads, advocating for best practices broadly, and providing focused mentoring to squads.
Ensure that the technical requirements for code as part of PI Planning are of a high quality.
Contribute to architectural decisions and the design of solutions to resolve challenging problems.
Determine and define clear deliverables, roles and responsibilities for team members required for specific projects or initiatives working closely with software engineers, QA, product managers and other engineering teams to produce high-quality products and features through the software project lifecycle (build, test and release on time).
Maintain high standards of software quality within the team by establishing best practices and performing code reviews for the software development team. Follow and pro-actively implement appropriate coding standards.
Work closely with the Product Management, Project Management, Site Reliability Engineers and Executive teams to deliver the product roadmap.
Identify the staffing and resourcing requirements that are needed to achieve delivery goals, and guide budget owners to allocate resources effectively
Monitor the progress and performance of projects to ensure timely and effective delivery.
Engineering Graduate or PhD degree
10+ years experience in software industry
5+ years experience in managing software development teams
5+ years experience with functional programming
3+ years experience in managing managers
Experience working with remote teams
Experience in coaching teams through agile method and organizational changes
Proven experience in people management
Proven experience in strategic planning
Experience mentoring, coaching and developing rising talent in the technology department
Experience working in globally distributed teams
Excellent interpersonal skills so as to be able to relate with people from diverse background or personnel from different units of the company.