User Interface / Application Developer – Digitalization
Siemens – Digital Grid: The business unit has a UI developer position with a focus on growing our digitalization initiative in the area of Secondary Distribution Automation. This individual works in a matrixed organization consisting of other business unit teams that are implementing a division-wide initiative centered on digitalization. This position is responsible for acting as the Development expert on Application topics as it relates to digitalization and may be also engaged in customer-facing activities to target, develop and close specific digitalization opportunities.
We are forming a passionate group of solution innovators, UX devotees, techies, data scientists/AI experts, software lovers, AR/VR experts, visual artists, and architects, working in a lean startup concept. We strive to solve complex problems in various domains ranging from industry, energy, mobility and buildings to smart cities by applying methods and principles of data analytics, artificial intelligence, simulations, and interactive visualization. We are looking for equally passionate techies to join us in this exciting journey of finding solutions to some non-trivial challenges of the always connected peta-byte world.
What are my responsibilities?
• You will be responsible for Design of software solutions based on requirements and within the constraints of architectural /design guidelines.
• You will have to derive software requirements and software functional specification, validate software requirements, provide software feasibility analysis and software effort estimation.
• You should identify potential harmony and for re-use of components / technology.
• You will be responsible for the accurate translation of software architecture into design and code.
• You will guide Scrum team members on all design topics & implementation consistency against the design/architecture
• You will be involved in coding of features and/or bug-fixing and delivering solutions adhering to coding and quality guidelines, for self-owned components
• You will guide the team in test automation design and towards implementation of the same
• You will be collaborating with globally located teams.
• You will participate in resolution of field problems in application of existing products.
What does it take me to qualify for this job?
• Masters/Bachelor’s degree in Computer Science or related discipline from a reputed institute.
• Grass-root experience of 2 - 5 years in solving complex problems and developing end to end application stack.
• Solid knowledge in at least one major programming language and computing platform viz. Typescript / JS / Python / Java / Go.
• Solid knowledge of front-end technologies viz. Angular/React/Vue, Bootstrap, HTML/CSS/JS.
• You should have experience in REST API development with technologies like Express & NodeJS / Flask & Python.
• You need to have experience in dB services like PostgreSQL / NoSQL, knowledge of processing large volume timeseries data is preferred.
• Should be familiar with hybrid/native mobile app development life cycle and relevant technologies viz. Ionic / Cordova, Android Studio / XCode, knowledge of process of publishing apps on Google Play Store and Apple App Store is desired.
• You should have exposure to Test automation frameworks like Jasmine and Protractor and should be able to perform test automation design for Unit Testing, Integration Testing and E2E Tests.
• Hands-on experience with source code control and application lifecycle management systems viz. Jira / IBM Jazz / Azure DevOps, Git.
• Experience with setting up of CI/CD pipeline is required. Hands on with AWS/Azure, PaaS technologies like CloudFoundry / Kubernetes and Docker are highly preferred.
• Following qualities will be an added advantage:
• Strong focus to deliver quality in every work aspect, utilizing tools to monitor, analyze and enhance software code base, understanding of agile development approaches.
• Proven experience applying and thorough understanding of software design patterns and principles.
• Ability to choose and apply proven architectural patterns for concurrency and distribution
• Strong debugging skills to fix challenging issues related to performance and scalability, Hands-on software troubleshooting experience.
• Exposure to disruptive technologies like blockchain
• Exposure to Data Mining and Machine Learning techniques such as Classification, Clustering and Forecasting.
• Strong oral and written communication.
• Responsible to build web/mobile based applications for our fleet of new products and services
• Maintaining existing applications and its codebase, to include troubleshooting bugs and adding new features
• Technical documentation and Deployment
• Proficiency with cross platform mobile development. Experience and Strong fundamentals in mobile application development with native platforms like Android or iOS.
• Strong design and programming skills in JAVA, Android 4+ SDK/NDK Development
• Should have experience in IOS, IPAD, IPHONE
• Experience with third-party libraries and APIs
IDE - xCode with IOS 6+
• Solid understanding of the full mobile development life cycle
• Create front-end user interface prototypes.
• Should have excellent logical and coding skills to understand product requirements. Working knowledge of the general mobile landscape, architectures, trends, and emerging technologies
Version Control (Git, SVN)
• Practical experience consuming RESTful web services, SOAP, XML-RPC and JSON, UI/UX design within the mobile environment would be preferred
• Experience with developing Cloud Based Applications
• Ability to develop UserStories and Requirement Descriptions of the functions to be implemented as part of the lean development process
• Work with cross-disciplinary teams (design, research, product) throughout the design process.
• Good communication skills
Masters / Bachelor of Science in electrical/Electronics/computer/ or computer science
Typically 2-5 years of experience and demonstration of key responsibilities and knowledge as described above