Position Summary:
The Senior Cloud Software Engineer will report to the Senior Director of Software Development and be responsible
to:
- Develop cloud architecture framework, security model and use model for large device management and
multiple business client/residential homeowner use. - Leads in the development of the technical solution, in translating Product Management requirements /
business needs, into technical requirements to support the product roadmap. - Identifies gap, strategic impacts, financial impacts and the risk profile in the technical solution or offering,
and provides technical support.
Job Responsibilities:
- Work collaboratively with all levels of business stakeholders and engineers to define and develop a highly
scalable enterprise SaaS technology platform. - Explore and recommend new technologies / services. Articulate the advantages of various solution options.
Perform cost benefit analysis of proposed systems - Produce reference architecture designs and deliverables for Infrastructure components (Network / Platform)
to support large device networks and wide range of business and individual client connections - Lead the selection / finalization of cloud service technologies and technology vendors. Define any custom
work needed from technology vendors. - Define & implement cloud data architecture including storage, structure, rules, encryption methods
- Define & implement roles / authentication for enterprise level class cloud service including isolating data
from devices and user/client access. - Provide recommendations on architectural changes in order to improve efficiency, reliability and
performance and to reduce cost. - Come up with the right governance process to ensure applications are developed according to the
architecture guidelines, while allowing teams to be independent and flexible. - Participate in development process, assures definition & adherence. Works closely with Product Marketing
in gate review and change control process. Help to Facilitate & coordinate tasks & critical items. Track
and report on progress. Works with Project Manager to manage product through the product lifecycle
using our standard processes. - Be a student of current industry trends, ensuring that the company maintains and expands its technology
leadership position.
Needed Skills and Experience:
- Demonstrate a good understanding of concepts, best practices and patterns for architecting for high
scalability, availability and other relevant system qualities. - Experience building device collection and management services
- Experience managing secure device networks
- Experience on working true Cloud providers like AWS, Azure, Google etc.
- Ability to capture and analyze the data that comes from the sensors at the endpoints of IoT — and translate
that data into important information for the business. - Hands on experience on Datacenter Build & Migration
- Ability to analyze and communicate technology requirements and challenges as well as product
capabilities. - The ability to work in a fast-paced and deadline driven environment for multiple product launches.
- Good interpersonal skills, and excellent communication skills.
- Proven record in working with marketing and the QA organizations in getting a world-class product to
market.
Job Description
Requirements:
- Minimum Four year, BSCS, MSCS or equivalent engineering degree/experience. At least 6+ years of high-
availability production environment. - Expertise in deploying Application Server such as node.js in multi-tier architecture.
- Experience with relational and NoSQL database technologies such as Oracle, MySQL, MongoDB or
Cassandra. - Extensive knowledge about APIs. You can design RESTful services and integrate with other data
providers, and you know when to use JSON or XML. - A solid understanding of networking and core Internet protocols (e.g. TCP/IP, DNS, SMTP, HTTP, and
distributed networks). - Knowledge of Security and Governance
- Good understanding of Software Development Lifecycle
- Good organizational skills, and oral and written communication skills
- Ability to work with minimal supervision, making decisions based upon priorities, schedules and an
understanding of business initiatives.
Ideal candidate will also have:
- A background in automating the management of a data center environment
- Experience in J2EE, JMS, MQ and Node application troubleshooting
- Experience in using typescript on both client and server applications
- Experience with hardware or software based firewalls, load balancers and proxy servers
- Experience with intrusion detection systems and network and server security hardening
- Experience in monitoring, metrics collection, and reporting using open source tools.
- Intermediate to expert level understanding of Linux systems and management methodologies, including
software packaging. - Experience with configuration management tools such as Ansible, Puppet, CFengine or Chef
- Experience with PASS providers such as AWS, Azure, or Google Cloud
- Experience with Hadoop, Spark, Mongodb.