What are the responsibilities and job description for the Principal Software Engineer position at O.C. Tanner?
O.C. Tanner is the global leader in software and services that improve workplace culture through meaningful employee experiences. Our Culture Cloud is a suite of apps designed to enhance employee experience with strategic recognition, service awards, wellbeing, leadership, and events that help people thrive at work. Our Culture by Design approach provides expert services to organizations looking to create great workplaces.
Our global team of 1,500 people hail from 58 countries and speak 62 languages. As programmers, researchers, designers, client professionals and craftspeople we create the tech, tools and awards that connect employees to purpose at thousands of companies.
Join us as we help people all over the world thrive at work. Here is where we need you most :
As a Principal Engineer for the O.C. Tanner Company, you will be vital to our success. Principal Software Engineers are not only responsible for identifying and creating the technical direction of our software, they're also responsible for disseminating and supporting that direction throughout the IT organization, and doing hands-on development as needed. If mentoring your peers and guiding the technical direction of our software is exciting to you, then this may be the position for you.
Other responsibilities include, but are not limited to, the following :
- Work autonomously and advise architecture leadership with additional input, direction, and vision for O.C. Tanner's product and platform implementations
- Establish relationships and build trust among principal engineers and engineering teams. You will use these connections and communication skills to discover technical requirements that cut across our custom-developed products
- Work on a team of architects & principal engineers as you guide other engineering teams
- Work closely with one or more engineering teams to guide & assist their software development efforts
- Participate as a decision-maker in the Architecture Coalition process, assessing and approving preliminary designs
- Engage with Senior Principal Engineers and the Director of Enterprise Architecture to help set short term and long-term vision of technology built at OC Tanner
- Maintain software system diagrams, following up with the enterprise architect or engineers as needed to keep them up to date
- Present architecture designs and flow diagrams to tech leadership and engineering
- Create clear requirements for platform teams to enable the support of your designs
- Guide and consult with other engineering teams on critical design or performance issues
- Conduct code reviews and approve pull requests based on standards you have helped to establish
- Preserve and automate the deployment of developer source code assets
- Create, publish, and evangelize development standards and guides
- Contribute to cross-team libraries or services that create consistency of developer experience across all of software engineering
- Evaluate and recommend technology choices to proactively meet O.C. Tanner business strategy
- BA / BS degree or 15 years of professional or military experience
- 10 years of software development experience
- Extensive knowledge of CI / CD pipelines
- Extensive experience with Java and Spring
- Experience facilitating discussions with senior leadership regarding technical / architectural trade-offs, best practices, and risk mitigation
- Direct hands-on experience leading the design, development, and deployment of business software at scale
- Experience with Kafka (or similar) topics and Avro schemas for integration
- Experience with software development life cycle (SDLC) and agile / iterative methodologies
- Experience with integration of AWS cloud services with on-premises technologies from Microsoft, IBM, Oracle, HP, SAP etc.