Logo
ServiceTitan

Principal Software Engineer

ServiceTitan, Denver, Colorado, United States, 80285

Save Job

Principal Software Engineer

You will be part of the Engineering leadership team at ServiceTitan responsible for the technical direction of our product. We provide exciting opportunities to make an immediate impact in our rapidly growing startup. We are quality-minded, use the most modern tools on the Microsoft .NET platform, have an amazing culture, and love to solve complex problems. Over 50,000 people depend on our software to perform all their daily activities. We are looking for someone to lead all technical aspects of an engineering team at ServiceTitan. We need a highly technical, forward-looking, leader who will own the technical vision of a squad and be accountable for the successful execution of that vision. We also desire those who can balance rapid iteration and development with high product quality expectations and who are innovative and comfortable with ambiguity. As Principal Engineer you will: Own: Own from end to end the short and long term technical vision of your team Design & Revamp: Design, implement and improve critical systems and components powering ServiceTitan stack; improve the security, availability, reliability, and performance of our products; drive/participate in all major architectural and strategic decisions especially those relating to scale Improve Efficiency: Build tools to increase efficiency of all our engineers; improve performance, processes, and quality across the whole engineering team Discover: Identify opportunities to extract or develop systems beneficial for multiple teams Empower: Mentor and guide Engineers across engineering as a whole 60% development / 40% working on everything else Teambuilding: Work closely with Recruiting in particular, interview candidates and co-own activities related to lead generation (e.g. tech talks) and screening (HackerRank tests) Strategy: Contribute to the roadmap and resource planning Measure Success: Determine metrics for success and constantly measure them Collaborate: Communicate effectively with cross-functional teams, engineers, Product Managers, customers, and partners To be successful in this role, you'll need: 8+ years of industry experience, including with large scale enterprise web/saas applications 3+ years of experience on senior engineering roles (designing APIs, abstractions, and tools used by other engineers) Expert-level knowledge of:

Microsoft .NET technology stack (C# / .NET, ASP.NET MVC, Web APIs) and SQL databases (Microsoft SQL Server or any other) HTML5 and JavaScript; experience such front-end frameworks as React and Knockout.js is a plus Taking existing monolithic applications to a domain based, service-driven paradigm Experience with large scale 3rd party integrations Basic Microsoft Windows administration skills including IIS administration Performance / reliability monitoring tools (e.g. New Relic, DataDog, Application Insights) Log / Metric collection and analysis tools (e.g. Elasticsearch-Logstash-Kibana, DataDog, Interana) Git, unit testing, debugging, profiling, Visual Studio, JIRA and other tools that are typically used by developers on Microsoft technology stack Continuous integration and continuous delivery methodologies and tools (TeamCity or similar) Administration and building automation for Azure, AWS or other public cloud technology Ability to empathize with our users and champion for their experience. Strong communication and technical writing skills B.S., M.S. or PhD in Computer Science, Physics, Engineering or a related technical field. All your information will be kept confidential according to EEO guidelines.