This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
The Principal Software Engineer operates with a high degree of independence, leveraging multiple functional and technology skillsets and provides helps set technical strategy for the team while also providing oversight and guidance in the design, development, testing and implementation of high-quality, resilient software solutions.
Job Responsibility:
Document complex "as is" and "to be" processes and describe the changes required to migrate to the "to be" capability to accurately record the changes required
Discuss and recommend complex or innovative technical developments to improve the quality of software solutions and supporting infrastructure to better meet users’ needs
Work effectively with cross-functional teams to conceptualize technology solutions, leveraging data to drive original design ideas and decisions
Lead in the development of the most-complex existing and new applications by analyzing and identifying areas for modification and improvement
Develop, automate, and perform complex testing and monitoring to diagnose and correct application functionality and/or performance issues
validate and interpret test data to verify that specifications are met and/or to identify remedial actions required to ensure suitability. Guides others in these processes
Ensure best practices around robust solution monitoring and alerting to proactively diagnose application performance or stability issues
Monitor, identify, and correct the most-complex software defects to maintain fully functioning applications software
Lead cross-functional teams in work breakdown and estimation of software development activities in order to develop and achieve software project delivery timelines
may provide resource staffing recommendations
Define and maintain a technical roadmap to facilitate application software development and ensure the development work is prioritized in line with business requirements
Oversee the ongoing integration activities to support overall solution delivery (i.e. construction, configuration, platform, system, application, product, service, etc.) and make prioritization recommendations in order to maximize value delivery
Explore and develop a detailed understanding of external developments or emerging issues and evaluate their potential impact on, or usefulness to, the organization
Act as subject matter expert in an area of technology, standards, and operations for the software engineering team. Maintain in-depth understanding of current and emerging industry best practices through continuing professional development, attending conferences, and reading specialist media
Requirements:
Understands and applies the Software Development Life Cycle (SDLC), including requirements analysis, design, development, testing, and maintenance
Plans, organizes, prioritizes and oversees activities to efficiently meet objectives
Assimilates and understands data and information from various sources in order to draw appropriate conclusions and make relevant recommendations
Understands business context, needs, rules, and architecture, as well as organizational structure, cultures, capabilities, and processes to document the current state of processes and the business
Leads team to envision and document the future state of processes and technology by identifying the solution scope, potential value of the future state, and the changes to the process, technology, organization infrastructure, and capabilities necessary to achieve the desired future state
Creates clear, comprehensive, effective, documentation and artifacts that convey complex technical concepts, using documentation tools to craft structured and visually appealing content that meets the intended purposes. Provides oversight and review of team’s technical documentation
Develops software through use of programming languages, tools and platforms including: Object or component-oriented development
Database User Interfaces and Queries
Cloud Computing: Operates as a recognized expert to understand, deploy, and manage cloud-based infrastructure and services
Designs, executes and reports on systems/service tests to ensure that an application functions as specified in the requirements
Guides the team on installation, set up, configuration, and management of software and environments
Guides team to monitor, diagnose and fix problems with technology products
Education: Bachelor's Degree in Computer Science or related field
Experience: Experienced practitioner able to deal with the majority of situations and to advise others (3 to 6 years)
Managerial Experience: Experience with general supervision of more junior colleagues (7 to 12 months)
What we offer:
Competitive Wages & Paid Time Off
Stock Purchase Plan & 401k with Employer Contributions Starting Day One