The role of an Architect is responsible for leading teams in defining, designing, and implementing software systems in a variety of technologies, with a focus on scalable web-based services and top rate mobile user experiences. To Partner with a Project Manager and ensure the technical quality of whatever we build is elegant, practical, efficient, and otherwise technically excellent. The position demands best coding, designing, documenting and technical skills to be applied in the day to day activities.
Critical Business Activities
- Lead the coding of software modules to ensure excellent code quality and full compliance with the design specifications
- Estimating design and development tasks
- Creating detailed plans for software development schedules
- Translating product requirements into detailed technical designs of object oriented software modules
- Performing design and coding reviews
- Assist engineers in tracking down and fixing bugs
- Preparing for and participating in project reviews
- Proactively managing the team’s schedules and tasks
- Performing any task that adds value in a dynamic startup environment.
- Doing whatever it takes to ensure the team and company meets its goals
- Working with other parts of the organization to document product requirements
- Reviewing and adding to unit and integration testing scripts
- Ensuring full unit testing, integration testing, and tuning of software
- Supporting sales, marking, and customer support as needed
- Domestic/International travel may be required 10-30% of the time
Competencies and Experience Required
Skills and Experience
- 5+ years of full lifecycle software product development experience, including product support
- 1+ year in a legitimate technical leadership role
- 5+ years of object-oriented software design and development
- Software development in a Linux/Unix environment (Windows and Mac a plus)
- Advanced knowledge of common software development tools, such as IDE’s, debuggers, version control systems, etc.
- Experience working in a multi-branch source code environment
- Design and development of high-throughput, high-availability client/server systems
- Systems integration of message-oriented or other distributed client/server systems
- Design and development of native iOS and Android apps a big plus
- Expertise with Django or Magento a big plus
- Advanced understanding of scalable, distributed, and big-data architectures
- Excellent functional design documentation skills
- Excellent object oriented technical design and programming skills
- Execution: Ability to identify critical paths and drive the plans to support one or more complex product and platform deliverables with a commitment to quality and time.
- Management: A true “roll up the sleeves and get it done” working approach; demonstrated success as a problem solver, operating as a result-oriented, self-starter.
- Communication: Superior communication skills with the ability to present technical topics to non-technical audiences and build partnerships with business area leaders and external solution providers.
- Leadership: Ability to maintain high morale, both within the architecture group, and externally as well by inspiring trust and sense of achievement. Shape opinions and build confidence in the teams while facilitating new tool and technology evaluations and introducing new processes and practices.
- Judgement: Be able to manage risk identification and risk mitigation strategies associated with the architecture and make sound decisions with limited and incomplete data.