Senior Software Engineers possess the ability to function as a technical lead, providing technical direction to other developers. Frequently have direct responsibility for product features or key technology choices and implementation. Collaborates as part of a team for the development of complex systems; including requirements analysis, concept development and design, implementation and testing, demonstrating flexibility of role as required. Focuses on our backend development, but has the ability to develop throughout the full stack.
- Drive design and implementation leveraging modern design patterns
- Own both the design and implementation of solutions to deep technical problems
- Ability to partner effectively with UX, PM, DevOps, QE and other developers to design and implement meeting the spirit of requirements
- Understand the common standards/processes/tools and the ability to leverage them where possible.
- Write code (product and test) to deliver against project timescales, quality and requirements in various languages including Ruby or other selected languages for Sophos Cloud products.
- Work with best of breed Cloud technologies (NoSQL, high throughput event processing, cloud-scale data analytics, etc.)
- Design software components (Functionality, defect fixes or automation) that form part of a larger solution, in line with team objectives
- Define test scenarios and test cases to ensure quality of the team deliverables
- Provide guidance and mentorship to junior developers.
Experience & Skills
- BS in Computer Science or related field
- 7+ years of Ruby and/or ReactJS and/or Java and/or Python and/or Angular.
- Proven track record of working in high performing teams.
- Hands on experience designing and implementing microservices.
- Experience creating scalable application frameworks and microservices.
- Experience with high-volume consumer or small business-oriented solutions.
- Experience with Agile Software Development methodologies.
- In-depth knowledge of Java web-based applications.
- Experience using and creating RESTful APIs.
- Experience with both SQL and NoSQL technologies, MongoDB preferred
- Experience with Continuous Integration/Continuous Deployment best practices
- Excellent verbal and written communication skills
- Evaluating code and design quality
- Understanding how products and technologies interface with each other and fit with the strategy and business needs
- Evaluating technical and functional specifications and their cohesion
- Technical problem solving and strong debugging skills
- Effective communication with different audiences
- Risks Assessment and Mitigation
- Coaching and training
- Strong teamwork skills