Job Description
Job Title: Senior Developer – Smart Home
Location: Dubai
Job Summary:
Design, Develop, Test and Support SmartHome solution as per the requirements following the software development standards and methodologies.
Key Responsibilities & Accountabilities:
- Developing Home Automation Product: Designing, development, coding, and testing Home Automation solution to meet specific requirements and specifications for Home Automation.
- Debugging and troubleshooting: Identifying and resolving software defects and issues through systematic debugging and problem-solving techniques.
- Continuous Enhancements: Keeping up-to-date with emerging Home Automation and software technologies, standards, programming languages, and industry trends to enhance Home Automation product, personal skills and contribute to ongoing improvement.
- Following coding standards: Adhering to coding standards and best practices to ensure code quality, maintainability, and scalability.
- Documenting code: Creating and maintaining technical documentation, including code comments, user manuals, and system documentation, to facilitate understanding and future maintenance.
- Testing and quality assurance: Perform software testing, including unit testing, integration testing, and regression testing, to ensure the quality and reliability of the software.
- Meeting project deadlines: Delivering projects within specified timeframes while managing priorities, tasks, and deadlines effectively.
- Maintaining code repositories: Managing source code repositories and version control systems to ensure proper organization, documentation, and versioning of software code.
- Adhering to security and compliance standards: Implementing secure coding practices and following industry standards and regulations to protect sensitive data and ensure compliance.
- Providing technical support: Assisting in resolving software-related issues, providing technical guidance, and offering solutions or workarounds.
- Code review and refactoring: Participating in code reviews and refactoring activities to improve code quality, performance, and maintainability.
- Collaborating in software design: Contributing to software design discussions and providing input on architectural decisions to ensure efficient and scalable solutions.
- Adapting to change: Being flexible and adaptable to changing project requirements, technologies, and priorities, while maintaining a focus on delivering high-quality software solutions.
- Collaborating with teams: Working closely with other team members to ensure effective coordination and integration of software components.
Education & Experience:
- Bachelor’s Degree in computer science, engineering, or equivalent.
- Experience of minimum 4 years of development of Home Automation solutions with an overall of 6 years in software development.
- Advance Programming skills in Phyton, VBA, C#, C++, JavaScript, NodeJs (server side)
- Handled complex home automation / IOT projects from development perspective
- Linux Scripting (Bash scripting, Daemon configuration etc)
- Experienced on various Home Automation protocols like KNX , Zigbee, WiFi, Bluetooth, Alexa
- Integrated with home automation hardware like Schneider, ABB, Jung, etc
- Experience on Azure, AWS DevOps is an advantage
- Relevant Training / Certifications
Mandatory Skill sets:
- Software coding for Smart home
- Minimum 4 years of experience on Phytons , VBA and C/C++
Other Competencies:
- Programming Skills: Strong knowledge of programming languages and software development methodologies.
- Problem-solving skills: Ability to identify and solve technical problems in software applications.
- Collaboration skills: Ability to work collaboratively in a team environment and communicate effectively with other team members.
- Attention to detail: Strong attention to detail to ensure software applications function correctly.
- Continuous learning: Willingness to continuously learn and improve technical skills.
- Creativity: Ability to think creatively and come up with innovative solutions to technical problems.
- Time management: Ability to manage time effectively and prioritize tasks to meet project deadlines.