In this position, you will design and develop new software features, participating in the full development lifecycle. Development is performed in a team environment utilizing sound engineering and software development practices and technology, and typically involves highly complex system design or product architecture design. Responsibilities include collaborating with and influencing multiple cross-functional teams, as well as technical leadership of a large development team or leading technical aspects of a multi-team project.
- Participates in or drives negotiations on project objectives and requirements.
- Evaluates Technology solutions. Provides cost/benefit recommendations.
- Contributes to or develops architectural designs and independently develops complex system designs that meet the requirements.
- Provides skills needs and time estimation for the design.
- Considers tradeoffs between requirements, speed, cost and reliability in the choice of a design approach.
- Develops and documents code, according to the development process, that satisfies the software design. Develops and executes thorough unit test plans. Integrates with other components, solving highly complex system problems, to produce a final product. Responsibilities typically extend to the technical management of the design, testing and integration of other engineers’ work in related areas.
- Leads or participates in reviews of documents, designs, code, test cases and user documentation.
- Does advance work, including requirements, on a feature before a development team is in place.
- Typically, responsible for the ongoing maintenance and integrity of several software subsystems comprising an architectural layer of the software.
- Keeps informed of new developments in the software engineering and computer engineering fields and disseminates appropriately through the organization.
- Identifies and participates in technical developmental training opportunities.
- Functions as a go-to person for a technology, software methodology, a functional area of industrial control or other area of expertise.
- Consults on or drives adoption across multiple teams.
- Researches, considers, and explores new possibilities utilizing the latest technologies and standards. May function as a go-to person for a technology, software methodology or other area of expertise.
- Function as a technical lead of a large development team or lead technical aspects of a multi-team project.
- Drives or contributes to capability improvement in the areas of software development practices and development tools.
- Clearly communicates and conveys design concepts, both verbally and written. Also, able to learn and understand complex control system concepts.
- Effectively teams with others through mutually supportive professional relationships, open and direct communications, honesty and respect.
- Able to cope with and leverage stylistic differences and differences of opinion.
The must-have skill sets
- 12+ years in a software product development environment
- Software Architecture Design patterns: Application and/or Services, API management, Microservices, Docker/Containers
- Experience in large, scalable distributed systems and/or SaaS solutions
- Direct involvement with the Industrial Automation industry is preferred
- Software development and architecture work on Cloud and Mobile platforms
- Object orientated design using C++, C#, or Java
- Proficiency in TypeScript, Node.js, Angular framework, GraphQL
- One or more of the following – High availability, performance and scalability, micro services, SOA, modern database architectures, highly automated test systems, rapid prototyping, demonstrable experience of taking concept to product, Web technologies, security, data communication, and contemporary user interface technologies
- Software development on both Windows and Linux
- Demonstrated experience architecting modular software experience
- Technical team leadership
- Technology change leader
- Both local and global technical development team environments
Equal employment opportunity
Rezilyens is an equal opportunity employer and is dedicated to fostering an inclusive and diverse environment for employees from all walks of life. We hire based on talent and we’re proud of our global perspective.