The Lead Software Developer (PHP) will lead a development team delivering clean, reliable, and performant software supporting VPN solutions for both consumer and business-to-business customers. The Lead will manage perform code reviews, mentor team members, enforce good development practices, and assist with code and infrastructure re-architecture efforts in coordination with Support, Operations, and Product managers.
- Full responsibility for delivering solutions into production (working through operations teams).
- Full responsibility for quality of code through peer review and lead approval processes.
- Some coding required (this is not a pure management role).
- Responsible for training and mentoring developers on the team and recommending actions around hiring, firing and promotions.
- Responsible for architectural decisions with consultation from other members of engineering leadership
- Daily coordination of development activities with Product and Project Managers and other Lead Developers.
- Working closely with distributed development in multiple locations and timezones.
- Assisting in the design and evolution of the companys software development process and ensuring your teams compliance with those processes.
- Designing and developing new features based on product specifications.
- Troubleshooting production issues and providing configuration or coding changes to fix them.
- Refactoring existing code to improve efficiency, extensibility, and maintainability.
- Identifying and evaluating new techniques, tools, and technologies to expand the teams capabilities.
- Reviewing developer test plans, test cases, and automated test scripts.
- Assist scrum master with maintaining a prioritized backlog and schedule for the team. Requirements
- Minimum of 7 years of experience in software development, focusing on the use of PHP; Python experience would be beneficial
- 4+ years of experience in leading development teams
- Good understanding of DevOps, CI/CD tools, and configuration management tools
- Experience with application containerization and orchestration
- Solid grasp of application architecture components: database (relational and non-relational), message queues (e.g. RabbitMQ, Kafka), load balancers, etc
- Excellent knowledge of Web technologies and protocols (e.g. RESTful APIs, JWT, etc)
- Understanding of software development life cycle methodologies (particularly Agile). Hands-on experience with Agile/Scrum & Waterfall process environments
- Strong sense of personal accountability to team members, co-workers, and stakeholders
- Good organizational and triage abilities for task management
- Ability to work independently to understand and execute major product changes.