Job DescriptionThe Staff Engineer (Lead Software Engineer) helps own and evolve one or more product verticals on a Kotlin/JVM, event-oriented platform that powers self-service business and commerce for Inductive Automation's customers and partners. Working closely with engineering and product leadership, you'll help define and evolve technical direction and lead the design processes that turn ambiguous needs into shipped, operable systems. You'll contribute meaningfully across the full delivery lifecycle, evaluation and trade-off analysis, domain and data modeling, architectural design, implementation planning, hands-on implementation, deployment, and operational ownership, and raise the level of the engineers around you as you do it. This is a full-time role with onsite, hybrid, or remote opportunities are available.ResponsibilitiesDemonstrating success leading large, strategic, or complex areas that have clear impact to the success of Inductive AutomationHelping evolve architectural direction for one or more verticals and contribute to cross-cutting platform concerns, moving the system toward it incrementallyLeading the design lifecycle: requirements discovery → RFC/PRD → design → implementation plan → delivery → deployment → operation. Maintaining decision recordsDeveloping and evolving domain and data models; defining context boundaries and mappingsDelivering projects with broad organizational impact; decomposing them into well-scoped, maintainable pieces for the teamQuickly analyzing and resolving tactical issues across a wide variety of areasMaintaining deep technical domain knowledge of the platform's apps, services, contexts, and frameworksDesigning systems, frameworks, and platform interfaces/APIs intended to succeed long-term across module and service boundaries.Improving developer workflow, tooling, and deployment in ways that measurably aid delivery velocity (this isn't a CD-focused role, but velocity is a first-class concern)Using negotiation and patience to collaborate with other senior leaders, ensuring progress and setting the example for othersCollaborating across teams and disciplines to resolve technical debates and reach durable decisions; using influence and patience with other senior contributorsMentoring engineers on distributed-systems design, event-sourced/CQRS patterns, JVM/runtime reasoning, data modeling, and engineering judgmentInfluencing senior leaders on engineering strategyDefining technical strategy and executes to improve products, infrastructure, processes, or organizationsCompleting thoughtful and constructive code reviews in a timely mannerParticipating in the hiring process, as needed (by submitting referrals, meeting candidates, attending recruiting events, or presenting externally)Participating in conducting engineering interviews, as neededResponsible for one or more product areas or other IC leadership role (Product Lead, Scrum Master)RequirementsExcellent written and verbal communication, able to document issues, designs, and trade-offs clearly and concisely (RFC/PRD-quality writing)12 years of general software engineering industry experienceExcellent analytical and troubleshooting skillsStrong programming skills on the JVM, Java required; Kotlin strongly preferredDeep understanding of JVM compile-time and run-time semantics, with the ability to reason about concurrency and performanceExperience in distributed-system design and trade-off analysis, beyond RESTful CRUD / entity-oriented microservicesExperience with asynchronous, event-oriented architectureA demonstrated, articulate understanding of the system-design implications of distributed CQRS and/or event-sourced systems, able to speak to the trade-offsStrong data and domain modeling skills, including bounded-context definition and context mappingProficiency with SQL and the relational-modeling judgment behind itDemonstrated track record of full-lifecycle product delivery, a meaningful or leading role in evaluation, modeling, architectural design, implementation planning, implementation, deployment, and operational managementAbility to rapidly assimilate a large, unfamiliar codebase and a non-trivial architectural paradigm, and become productive quicklyExperience designing platform-wide interfaces/APIs and reasoning about codebase modularity and boundary enforcementAbility to translate business goals into effective designs and implementation plansFamiliarity with agile methodologies such as SCRUMFamiliarity with source control management systems such as GithubAbility to accurately and effectively document ideas and specificationsAbout UsWho are we?Champions for industrial automation innovation and driven by a mission statement to empower our customers to swiftly turn great ideas into reality by removing all technological and economic obstacles, we create and deliver solutions that relieve pain points, bring efficiency to operations and optimize integration.Why Choose Inductive Automation?Our passion goes beyond customers. We celebrate your personal and professional milestones, and we support our teams with meaningful work in a collaborative environment.We find that great work-life balance inspires teams to do their best work and empowers people to live their best lives. That's why diversity, fun, and flexibility are ingrained into our work culture.The Inductive Automation team understands the importance of personal growth and social connection. So things like time for professional development, or company and team activities are baked right into the schedule to keep us all engaged, connected, and prospering.Benefits and Perks100% Employee Covered Health Care: Don’t pay a dime for your medical, dental, and vision insurancePaid Time Off: Receive paid holidays, vacation, and sick time401k with Match: Save for the future with our company-matching 401k programWorld-Class Headquarters: While on-site, enjoy complimentary snacks and beverages, then challenge a friend to a game of pool, table tennis, shuffleboard, or foosballAdjacent Nature Reserve: On-site employees enjoy breathtaking views and adventures that energize and inspireAdditional InformationAt this time, we are unable to offer employment for individuals located outside of the United States and/or those who require sponsorship for employment visa status (e.g., H-1B visa status). We know you've got a lot of options when seeking an employer where your skills and talents will shine, so we really appreciate that you considered us.Inductive Automation, LLC is an equal opportunity employer, and all qualified applicants will receive consideration for employment without regard to race, religion, color, national origin, sex,