Are you interested in learning state-of-the-art technologies that drive the red-hot digital media storage market? Do you want your skills to be current and marketable for years to come? Do you enjoy working in a dynamic, fast moving team environment? Do you want to work for an industry leading company whose customers include the major television networks and movie producers? Then Avid is the right place for you. Avid’s Platform Engineering & Cloud Group is seeking a talented Principal Engineer. You will be creating exciting software for a high availability, scalable, and cloud deployable software platform; utilizing the latest software technologies and tools that will be used by major film studios and television broadcasters.
- An excellent opportunity has arisen to join Avid’s Software Engineering Team as a hands-on Development Team Leader, leading a team of highly skilled developers and delivering complex systems and projects across a variety of Avids Cloud Platform technologies.
- The successful candidate will be able to motivate and guide a team of highly skilled engineers. The position also requires a hands-on and deep understanding of the complex interactions within message-oriented systems, connected services and web-applications built upon Microservices architectures.
- The right candidate must have a combination of Technical Leadership, Development, Design, Testing and Communication skills and is excited about working in a fast paced environment applying leading edge software technologies and modern development methodologies.
- The successful candidate must be able to communicate well in a multi-site environment, including coordinating the development and deliverables with other teams in Kyiv, Munich, Montreal, Poland and Burlington.
- Lead, guide and motivate a team of highly skilled local and remote software engineers
- Contribute to the recruitment processes and onboarding of new Engineers in the team.
- Provide technical guidance and mentoring to software engineering teams under your leadership.
- Responsible for Design and Development of new and existing Software Services on the Avid Cloud Platform, either through individual contribution or by delegation to team members.
- Responsible for management control around efficient task execution, adherence to disciplined agile processes and agile ceremonies within team.
- Responsible for ensuring robust test automation and coverage for software components within your team. Ensuring that instrumentation is in place to identify failures as early as possible in the development lifecycle.
- Responsible for reviewing of code and process and suggesting better standards to be practiced.
- Drive continuous innovation through evaluation, prototyping and championing of new technologies that can add value to the Avid technology stack.
- Partner with Architecture and Engineering teams to ensure architectural integrity of developed software components.
- Provide leadership and assistance in resolution of production incidents
- Prevent production incidents through proactive data analysis and robust monitoring/alerting of services under your responsibility.
- BSc or MSc in Computer Science, Software Engineering or Electrical Engineering.
- Strong leadership and motivational skills
- Hands-on software engineer, ideally with experience leading a team
- Experience with Agile development methodologies and Agile workflow management tools.
- Experience with systems administration and scripting, ideally in Linux and/or Cloud environments
- Understanding of message-bus and service-oriented architectures
- Excellent written and verbal communication skills
- Software Engineering
- Experience in the design, development and usage of message bus and service oriented architectures (SOA)
- Experience in designing, developing and supporting high availability, geographically distributed systems.
- Strong OO-design and -programming skills and experience writing software using Test-Driven Development principals.
- Deep understanding and commitment to product quality, including values such as scalability, performance, reliability, and maintainability.
- Programming in modern web and scripting languages is a plus, e.g. Java, JavaScript, HTML , python, ruby, perl
- Networking and Systems Engineering
- Knowledge in systems administration, ideally Linux
- Understanding of virtualization technologies and automation
- Development Process
- Experience developing using an Agile/SCRUM process. The ideal candidate will have excellent presentation and motivational skills.
- Experience with working with distributed teams, across several time zones
- Collaboration and Communication
- A proven track record as a skilled, innovative engineer, fluent communicator and commercial product driver with the drive to boldly take the team where no one has gone before