Principal Software Development Engineer Job Description Template
Our company is looking for a Principal Software Development Engineer to join our team.
Responsibilities:
- Fully and completely understand system interdependencies and limitations;
- Assist in the career development of others, mentoring on advanced technical issues and helping managers guide the career growth of their team members;
- Leverage knowledge of internal and industry in design decisions;
- Analyze and improve data quality and metrics;
- Ensure the quality of architecture and design of systems;
- Responsible for ensuring timely and quality delivery;
- Should be able to design and implement sufficiently large and complex feature and/or architectural improvements to the product;
- Identify areas of engineering improvements to the product and work with product architects and the team to address them;
- Provide technical leadership and be a role model to software engineerspursuing technical career path in engineering;
- Should be able to technically guide junior engineers with feature design and implementation;
- Candidate should have 2-3 years leadership experience managing teams;
- Would be developing product in either of the languages C/Python/go-lang;
- Suggest and propose solutions to complex design problems;
- Review design and implementation done by junior engineers;
- Recommend development best practices for product improvement and development.
Requirements:
- Insights into development of client-server applications with good breadth across networking, storage, micro services and other web technologies;
- Should have strong systems programming expertise;
- 10+ years of software development experience in C /C++/ Python;
- Should be a computer science graduate with strong fundamentals & problem-solving abilities;
- A strong understanding of complex concepts related to computer architecture, data structures and programming practices.