-
Responsible for the design, development, and implementation of enterprise solutions.
-
Participates in the development of test strategies, devices and systems.
-
Contributes to the development of new techniques, models and plans within area of expertise.
-
Evaluates complex issues using multiple sources of information
-
Work as part of an Agile/Scrum team
-
Define the technical implementation of the system architecture
-
Lead the development of application features from collaboration on requirements definition, feature design, coding, testing, and deployment to Level 3 support.
-
Reviews developmental frameworks, coding standards, conducts code reviews and walkthroughs, and conducts in-depth design reviews.
-
Interfaces with Product Management, Project Management, Software Development, Firmware Development, and Quality Assurance to ensure that a high-quality product is delivered which meets or exceeds all published guidelines
-
Mentors junior engineers to build high performance teams
-
Minimum qualifications include a Bachelor's degree in Computer Science (or related field) from an accredited college or university (four years relevant work experience may be substituted for education).
-
Must be proficient in analyzing highly complex issues and architectures and reducing them to practice. Strong analytical skills are essential.
-
Must have excellent communication and team management skills to effectively lead junior engineers and to collaborate with the globally dispersed development teams.
-
Under limited supervision; ability to exercise independent judgment; has authority to make limited decisions without specific guidance or direction from supervisor. Must be self-motivated and a "self-starter"
-
Enterprise Operations / Architecture - Must have spent at least 3 years developing large-scale, enterprise-wide, complex information technology initiatives, at both an infrastructure and an application level.
-
Cloud Architecture - Technical knowledge and implementation experience using common cloud architecture, enabling components, and deployment platforms.
-
Cloud Platforms - Application development experience utilizing distributed processing solutions such as Hadoop, distributed storage solutions such as Cassandra, real-time and post analytics processing architectures, application server platforms, clustered infrastructures, and distributed messaging technologies such as JMS, MQTT, RabbitMQ or Kafka.
-
Experience developing highly scalable data-driven applications based on structured and unstructured data sets.
-
Software Development - Minimum of 5 years’ experience with Enterprise Java (J2EE, Spring Framework, Spring Boot, Spring Cloud, Spring Data).
-
Databases – Knowledge and experience using relational databases such as mySql/MariaDB, Postgres and nosql databases such as MongoDB, Cassandra, HBase
-
Minimum of 5 years’ experience with object oriented programming languages (Java, C#). Any other relevant languages (Groovy/Grails, Python, c/c++, Ruby on Rails) is a plus
-
Web Services - Development of applications utilizing one or more of the following web services technologies: JSON, REST, RPC, or XML
-
Experience with Docker, Kubernetes or Swarm
-
Experience with automated builds and tests (e.g. Jenkins, Maven, Gradle, JMeter) is preferred