Sr. Principal Software Engineer
Fortra
Job Summary
This Sr. Principal Software Engineer role at Fortra involves enhancing and maintaining existing software products, developing new ones, and serving as a technical expert. Responsibilities include designing, developing, testing, and debugging software systems, working with product managers, identifying new technologies, and improving R&D processes. The ideal candidate is a creative problem solver with a strong desire for excellence.
Must Have
- Design, develop, document, test, and debug new and existing software systems and/or applications.
- Work with Product Managers to outline features for the product roadmaps.
- Work with different teams and products to understand requirements and design solutions.
- Identify and evaluate new technologies for implementation.
- Consult with end user to prototype, refine, test, and debug programs to meet needs.
- Work within R&D to improve processes and best practices.
- Serve as technical expert on development projects.
- Participate in full development life cycle including requirements analysis and design.
- Write technical specifications based on conceptual design and stated business requirements.
- Work without supervision on the most complex projects.
- Assist and mentor less experienced peers.
- Actively participate or take the lead in all Agile ceremonies.
- Strong C/C++ programming experience in the Windows OS environment.
- Strong design experience building Windows applications, especially network related Windows applications.
- Experience working with Windows kernel and Windows services in user mode.
- Prior experience working with WFP, NDIS drivers on Windows.
- Very good hands-on understanding of networking concepts – TCP/IP, UDP, IPSec, VPN, SSL/TLS, Routing, tunnelling etc.
- Hands on experience debugging BSOD’s and network related issues on Windows.
- Strong expertise with data structures and algorithms.
- Typically requires 15 or more years of experience.
- Proven previous experience at the Senior Software Engineer role.
- Superior working knowledge of Agile Project development methodology.
- Proven experience and knowledge of the relevant programming language requirements for this role.
- Proven leadership as a project leader or as a subject matter expert.
- Coordinate project activities of co-located and remote team members.
- Clear and concise communication skills (verbal and written).
- Presentation and mentoring skills.
Good to Have
- Good understanding of C# programming.
- Working with Windows installer technologies like Wix.
- Understanding of Jenkins jobs/pipelines.
Perks & Benefits
- Competitive benefits and salaries
- Personal and professional development opportunities
- Flexibility
Job Description
THE ROLE
This position is responsible for enhancing and maintaining existing software products as well as developing new products. The ideal candidate has a strong desire for excellence, with confidence in their expertise, and is a creative problem solver.
WHAT YOU'LL DO
- Design, develop, document, test, and debug new and existing software systems and/or applications for market sale or large-scale proprietary software for internal use.
- Work with the Product Managers to outline features for the product roadmaps.
- Work with different teams and products to understand requirements and design solutions.
- Identify and evaluate new technologies for implementation.
- Consult with end user to prototype, refine, test, and debug programs to meet needs.
- Work within R&D to improve processes and best practices
- Innovate process solutions
- Create or align best practices
- Enforcement of standards
- Serve as technical expert on development projects.
- Participate in full development life cycle including requirements analysis and design.
- Write technical specifications based on conceptual design and stated business requirements.
- Work without supervision on the most complex projects.
- Complete latitude for independent judgment.
- Assist and mentor less experienced peers.
- Actively participate or take the lead in all Agile ceremonies.
- Strong C/C++ programming experience in the Windows OS environment
- Strong design experience building Windows applications especially network related Windows applications.
- Experience working with Windows kernel and Windows services in user mode
- Prior experience working with WFP, NDIS drivers on Windows
- Very good hands-on understanding of networking concepts – TCP/IP, UDP, IPSec, VPN, SSL/TLS, Routing, tunnelling etc
- Hands on experience debugging BSOD’s and network related issues on Windows
- Strong expertise with data structures and algorithms
Nice to have:
- Good understanding of C# programming.
- Working with Windows installer technologies like Wix
- Understanding of Jenkins jobs/pipelines
QUALIFICATIONS
- Typically requires 15 or more years of experience.
- Proven previous experience at the Senior Software Engineer role.
- Superior working knowledge of Agile Project development methodology and the ability to implement those methodologies in active projects.
- Proven experience and knowledge of the relevant programming language requirements for this role and the ability to share that knowledge with team members.
- Proven leadership as a project leader or as a subject matter expert.
- Coordinate project activities of co-located and remote team members.
- Clear and concise communication skills (verbal and written)
- Presentation and mentoring skills
10 Skills Required For This Role
Communication
Problem Solving
Cpp
Data Structures
Game Texts
Agile Development
Networking
C#
Algorithms
Jenkins