Software Engineer
You'll sweep us off our feet if:
- You have a deep interest and passion for technology.
- You love writing and owning code and enjoy working with people who will keep challenging you at every stage.
- You have strong problem solving, analytic, decision-making with interpersonal skills.
- You are self-driven and motivated with entrepreneurial passion and desire to work in a fast-paced, results-driven agile environment with varied responsibilities.
- You are innovative, talented, and committed individual with excellent communication, spirit of teamwork and Analytical abilities to drive excellence!
Qualifications:
- Graduate in CS or equivalent with minimum experience of 6+ years in Software product development and maintenance.
- Experience of working in Agile teams
- Proven experience and expertise with developing applications using Java
- Hands-on with Spring Framework, specifically Spring Batch
- Sound knowledge of applications communicating via protocols like REST, HTTP, MQTT, AMQP, TCP/UDP etc
- Basic scripting knowledge on Linux (Ubuntu/CentOS) based systems
- Knowledge of network/traffic analyzer tools like Wireshark (Ethereal)/network monitor/SmartSniff is a plus
- Experience of working with embedded systems and hardware devices is preferable
- Working knowledge of containerization & technologies such as docker
- Sound knowledge of source code management tools like SVN/ Git/ VSTS, etc.
- Development experience with Cloud frameworks. Hands-on with Microsoft Azure IoT will be an added advantage
- Understanding of edge computing & gateways is preferable
- Strong background in Software design
- Applied knowledge in TDD
- Exposure to CI-CD
- Refrigeration/Plant Maintenance/Supply Chain domain Knowledge preferred
Youll make an impact by:
- Leads and participates in medium- to large-scale projects by reviewing project requirements; translating requirements into technical solutions; gathering requested information (for example, design documents, product requirements, wire frames); writing and developing code; conducting unit testing; communicating status and issues to team members and stakeholders; collaborating with project team and cross functional teams; troubleshooting open issues and bug-fixes; ensuring on-time delivery and hand-offs; interacting with project manager to provide input on project plan; and providing leadership to the project team.
- Leads the work of other small groups of four to six engineers, including offshore associates, for assigned Engineering projects by proving pertinent documents, direction, and examples; identifying short- and long-term solutions and timeline; reviewing and providing feedback for proposed solutions; and performing design and code reviews of changes.
- Troubleshoots business and production issues by gathering information (for example, issue, impact, criticality, possible root cause); engaging support teams to assist in the resolution of issues; formulating an action plan; performing actions as designated in the plan; interpreting the results to determine further action; performs root cause analysis to prevent future occurrence of issues; and completing online documentation.
- Provides support to the business by responding to user's questions, concerns, and issues (for example, technical feasibility, implementation strategies); identifying short- and long-term solutions; facilitating resolutions; and leading cross-functional partnership.
- Leads the discovery phase of medium to large projects to come up with high level design by partnering with the product management, project management, business, and user experience teams; and obtaining cross-function approvals.
- Demonstrates up-to-date expertise and applies this to the development, execution, and improvement of action plans by providing expert advice and guidance to others in the application of information and best practices; supporting and aligning efforts to meet customer and business needs; and building commitment for perspectives and rationales.
- Provides and supports the implementation of business solutions by building relationships and partnerships with key stakeholders; identifying business needs; determining and carrying out necessary processes and practices; monitoring progress and results; recognizing and capitalizing on improvement opportunities; and adapting to competing demands, organizational changes, and new responsibilities.
- Models compliance with company policies and procedures and supports company mission, values, and standards of ethics and integrity by incorporating these into the development and implementation of business plans; using the Open Door Policy; and demonstrating and assisting others with how to apply these in executing business processes and practices.
Required Skills: Do not want to see: - Full-stack resumes (don't want to see Angular or similar want to see back-end focused engineers focused on JAVA/API work) o Definitely no UI developers - (Typically avoid) application developers but those who have also created middleware, APIs, etc. - Spring MVC only background (need to have a modern version of Spring and ideally micro-services knowledge) Must-have technologies: - JAVA 8 o Spring (Spring boot, Spring Batch preferred but not required) - REST API - Cloud experience (Azure experience preferred - GCP or AWS okay though) - Understand architecture & design o Will be a tech lead so need to understand software/systems architecture as well - Basic DevOps (deploying into existing pipelines versus building anything from scratch, etc.