Job Description
The Senior Software Engineer I is responsible for creating and maintaining software that is sold or utilized internally by Inductive Automation, LLC. They participate in all phases of product development, including design, specification, implementation, testing, building, deployment, documentation, support, and maintenance. This role may be required to interact with customers to troubleshoot products or obtain requirements. This is a full-time position with remote, hybrid and on-site opportunities available.
ResponsibilitiesIndependently responsible for the entire lifecycle of projects or features including engineering design, development, and deploymentJava software development on Inductive Automation’s Ignition softwareAndroid development on Android native applicationImproving code structure and architecture in service of testability and maintainabilityWriting, co-writing, and reviewing design documentationMaintaining high proficiency in one or more technical areasPrioritizing and valuing unowned or undesirable work that enables the team to move fasterEnsuring work meets quality standardWorking with their team and adjacent teams to solve problemsEscalating problems that have wider scopeAssisting and teaching other engineers on an individual basisCompleting thoughtful and constructive code reviews in a timely mannerMeets and maintains 6 month performance milestones provided by their managerResponsible for one or more product areas or other IC leadership role (Product Lead, Scrum Master)[Product Lead] Understanding, vetting, and prioritizing all incoming defects and feature requests having to do with their product area, as well as taking an active role in the future big-picture planning[Product Lead] Participating in the Product Lead Council to collaborate with various stakeholders interested in their product area. Making decisions and acting as a subject matter expert for their respective product area[Product Lead] Authoring requests for comments (RFCs) for significant new product features or changes and working with stakeholders and the software engineering team to issue a final specification document upon ticket completionRequirements3-5 years of software engineering or software development experience2-4+ years experience utilizing high level programming languages such as Java, Kotlin, C++, C# etc.2-4+ years of Android development experienceObject-oriented design experienceExperience with RXJava 2, Dagger 2, Room, Android StudioModern toolchain and source control familiarity, e.g. GitFamiliarity with agile methodologies, e.g. SCRUMSolid understanding of concurrent programming (Java is a plus)A comprehensive understanding of computer science concepts and ability to apply expertise in object-oriented design, multi-threaded architecture, data structures, algorithms, and cybersecurityExperience using relevant tool suites. (IntelliJ or equivalent, Git, Webpack)Creative problem-solving skillsPassionate about building applications that delight usersStrong written and verbal communication and interpersonal skillsExperience working on a team using agile methodologiesPreferred experience with the following tools/libraries:
FastlaneKotlin MultiPlatformGradleCameraXAndroid WorkersFirebaseAbout Us
Who 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.
Good people can make a difference from anywhere, so Inductive Automation facilitates remote work flexibility from most locations in the U.S. We’ll provide you with the exciting work and high quality computer equipment, and leave the "where" part up to you.
We honor 40-hour work weeks mindful of your local time. Plus, we keep you connected and engaged with virtual social events and professional development time baked into the schedule.
Benefits and Perks
100% Covered Health Care: Don’t pay a dime for your medical, dental, and vision insurance.
Remote Flexibility: Work from home, in our beautiful office, or a combination of both. It’s up to you.
Work/Life Balance: Create a work schedule that fits your needs and your local time zone.
Paid Time Off: Receive paid holidays, vacation, and sick time.
401k with Match: Save for the future with our company-matching 401k program.
World-Class Headquarters: While on-site, enjoy complimentary snacks and beverages, then challenge a friend to a game of pool, table tennis, shuffleboard, or foosball.