Hiring a Principal Software Engineer C#, Java or C++ in Midvale, UT
Our client, a pioneer in customer interaction and contact center software, is looking for a Principal Software Engineer (CORE) with a passion and an entrepreneurial spirit for finding simple and sustainable solutions to complex problems. Ability to work within an Agile-inspired methodology to own and continuously deliver cloud-native software that is responsive, scalable, testable, automated, and sustainably managed. They are looking for engineers who are pragmatic and objective in their selection and use of technology frameworks and languages (i.e. best tool for the job); technology platform diversity and ability to rapidly apply engineering value to/with any platform is highly desirable. Finally, as a Principal Engineer, they want experts who are also teachers and mentors – leaders that think beyond organizational or geographical borders to raise the excellence bar for the company.
What to Expect as a Principal Software Engineer:
The opportunity to own one or many critical components of the overall technology platform which includes working with technical program management peers to understand and define the product backlog and break the work down into commercially prioritized and viable units that can be engineered using a design that you have largely conceived. This likely involves filling a technical supervisory role over other software engineers.
- Participate and drive design discussions and produce standard design artifacts for collaboration with team members and other stakeholders. Examples of design artifacts include (but are not limited to): UML-notated diagrams, data models (e.g. Entity-Relationship), API contract specifications, et cetera.
- Conduct and perform consistent design and code reviews providing tangible and actionable feedback.
- Participate in the definition and influence component Product Backlogs; influence Milestone/Sprint Backlog planning and detailed technical work breakdown and estimation exercises; participate in daily Scrum meetings and produce daily increments of software.
- Coding > 70% of your time in an Integrated Development Environment writing beautiful code designed for scale and performance, implemented with best practices and patterns, and quantifiable through tests.
- Work closely with QA, System, Network, and Voice engineers and architects to ensure a complete and sustainable software release that meets our technical standards for design and quality.
- Present content and mentor other engineers in technology trends, technology, patterns and practices; strive to be a go-to expert and trusted advisor within the global organization.
Qualifications and Desired Experience:
- 10+ years of experience in producing software; last 2-4 contributing at a Senior or Principal level
- Expert-level experience with at least one mainstream programming language (C++, Java, or C#); expertise in more than one preferred
- Experience with RESTful web service design and implementation
- Experience with database systems using SQL; experience in NoSQL databases a plus
- Experience with public cloud technologies and infrastructure like Amazon Web Services or Microsoft Azure; if you don’t have experience with cloud the strong desire to gain it may suffice
- Knowledge and practice of Computer and Information Science topics such as algorithm analysis and design, data structures, et cetera; academic degree or equivalent experience a plus