V

Software Architect (Remote)

Vertex
Full-time
Remote

Job Description:

JOB SUMMARY:
This position is responsible for guiding Business, Product, and Development leaders and teams to make good technology decisions that are innovative, fiscally responsible, and aligned with the overall Technology Strategy at Vertex, evolving our offerings toward a cloud-native, SaaS-centric Platform. Work closely with Agile development teams offering guidance, proof of concepts, and technical solutions. Utilize extensive expertise in defining technical solutions, assumptions, constraints, and a quality plan for each opportunity or body of work being proposed (features/initiatives) for a given line of business. Accountable for assigned portions of the architecture output by the development teams and helping the teams to adhere to Vertex standards and product vision.

ESSENTIAL JOB FUNCTIONS AND RESPONSIBILITIES:

  • Understand and anticipate the technological needs of the Vertex products and customers both in the present and in the mid- to long-term
  • Remain well versed in new technologies and architecture patterns so as to provide them as potential solutions to business opportunities
  • Communicate with executives, directors and product managers to understand business opportunities, associated value propositions and provide technical consultation
  • Translate business opportunities and unknowns into clearly defined architecture solutions that development teams can implement
  • Work consultatively with development teams to help them take ownership of a solution while serving as a resource for guidance and mentoring
  • Lead in managing a landscape of perspectives, positions, skills, and personalities in order to lead/mentor people toward optimal solutions
  • Provide in-depth documentation, instructions and learning materials of all works being rolled out to the larger organization or teams - i.e. software/architecture designs and patterns that can be absorbed by development teams
  • Promote acceptance of and conformance to technology strategy; solutions should utilize a common services platform-centric approach whenever possible
  • Promote a culture of innovation and mutual advancement within the development community
  • Continuously improve the software development process

KNOWLEDGE, SKILLS AND ABILITIES:

  • Self-motivated / Creative / Innovative
  • Strong software engineering skills
  • object-oriented analysis and design
  • functional programming analysis and design
  • strong development ability in a well-known stack (functional or OO) such as Java, .NET, or Node
  • database design and S/W - D/B interfacing
  • requirements verification and quality assurance
  • Strong understanding of distributed systems design and patterns
  • an understanding of performance consideration in a distributed architecture
  • an understanding of infrastructure as code - CICD, etc.
  • Strong understanding of Cloud services and how to leverage them
  • Experience with containers and orchestration is a plus
  • Familiarity with the Unified Modeling Language (UML) and ability to visually communicate complex architectures
  • Strong customer focus and ability to interact with and create relationships with Vertex partners and customers in order to understand the needs being defined and proposed by the Business and Product.
  • Ability to deliver technical expertise, excellence and guidance through a consultative approach.
  • Ability to learn, implement, code against, and evaluate new technologies and approaches at an extremely fast pace.
  • Excellent written and verbal communication skills
  • Quickly assimilate, analyze, abstract, synthesize and act on large amounts of information
  • Ability to provide guidance toward fast-paced, incrementally delivered, quality software


EDUCATION AND TRAINING:
· Bachelor’s degree in computer science or equivalent experience is required.
· Master’s degree preferred but not mandatory.
· Minimum 5 years of experience in software engineering
· Strong experience developing architectures which are understandable, robust, extensible, and scalable by utilizing:
· hierarchical partitioning (to manage system complexity)
· modular / component-based designs (to increase reuse and speed development)
· middleware (to promote platform independence)
· documented design patterns (to utilize best practices)
· Experience implementing n-tiered, distributed systems across different HW/OS platforms
· Experience with iterative, incremental software development processes
· Preferred qualifications: AI/ML experience, Python, & AWS within Agile/SAFe environment
· Or equivalent combination of education and/or experience

Other Qualifications
The Winning Way behaviors that all Vertex employees need in order to meet the expectations of each other, our customers, and our partners.
• Communicate with Clarity - Be clear, concise and actionable. Be relentlessly constructive. Seek and provide meaningful feedback.
• Act with Urgency - Adopt an agile mentality - frequent iterations, improved speed, resilience. 80/20 rule - better is the enemy of done. Don’t spend hours when minutes are enough.
• Work with Purpose - Exhibit a "We Can" mindset. Results outweigh effort. Everyone understands how their role contributes. Set aside personal objectives for team results.
• Drive to Decision - Cut the swirl with defined deadlines and decision points. Be clear on individual accountability and decision authority. Guided by a commitment to and accountability for customer outcomes.
• Own the Outcome - Defined milestones, commitments and intended results. Assess your work in context, if you’re unsure, ask. Demonstrate unwavering support for decisions.

COMMENTS:
The above statements are intended to describe the general nature and level of work being performed by individuals in this position. Other functions may be assigned, and management retains the right to add or change the duties at any time.