Software Architect - Java/Spark

Software Architect - Java/Spark
WA, Seattle

Job Description

Company Information

Our client is a global management consulting firm and the world’s leading advisor on business strategy. They partner with clients from the private, public, and not-for-profit sectors in all regions to identify their highest value opportunities, address their most critical challenges, and transform their enterprises. They are ranked #3 on Forbes Magazine "Best Companies to Work For" and and have unmatched Glassdoor reviews! 


The Software Architect will play a critical role in driving next generational development of these software applications, likely collaborating in successful multi-million dollar, multi-year investments. Under general guidance from the Applications Development Technical Lead, and working with Business Analyst and Product Manager, this role will be at the center of development efforts, overseeing application architecture and database design, and ensuring application security, flexibility, scalability, and performance. Key activities will include defining the interaction between application modules, layers, and middleware systems; as well as to communicate design choices and coding standards to third party vendors.

Job Responsibilities

  • Demonstrate and communicate a passion for digital products and services
  • Apply your knowledge of online, cloud and mobile platforms (Windows Azure, Google App Engine, Amazon Cloud, OS X, Android are essential)
  • Drive analysis of how business requirements can be technically implemented
  • Integrate large and complex system integration projects and collaborate with cross-functional teams
  • Design complex bespoke solutions that require creative and complex investigations and evaluations of alternative architectural solutions
  • Utilize proactive problem-solving to address challenges and functional concerns
  • Demonstrate initiative, self-motivation, creative problem-solving and effective interpersonal/communication skills that support the process of building collaborative teams
  • Institute superior technology capabilities with diligence, attention to detail and technical intuition
  • Implement advanced organizational and planning skills to developmental projects
  • Balance competing priorities while adhering to deadlines and aligning resources with value demands
  • Serve as a thought leader in digital platforms and solution architecture, regardless of the screen, device or deployment environment
  • Design bespoke online and mobile IT architecture, drawing on knowledge of open source and/or commercially available platforms
  • Apply industry best practices and design patterns to create scalable and secure solutions that have superior technical performance
  • Develop system implementation plans/processes and oversee the development, integration, testing and launch stages
  • Defines application architecture as a mean to achieve the business' security, flexibility, scalability, and performance goals; and makes sure that, over time and through the architecture's evolution, all stakeholders requirements can be met
  • Documents and communicates the architecture to the development team, third party vendors (as required), and all stakeholders (to the detail appropriate to the audience)
  • Ensures code development follows the architecture blue print and established coding standards
  • Proposes modeling and proofs-of-concept as required
  • Ensures the architecture is optimal not only for development, but also for operations, deployment, and continuous enhancements
  • When confronted with technical challenges, must find creative, economical, and elegant software engineering solutions
  • Identifies risks and proposes risk mitigation strategies associated with the architecture
  • Evaluate third-party suppliers, products and solutions and engage in/leading collaborative discussions

Basic Job Requirements

Education & Experience

  • BS/BA Degree in software engineering, computer science, mathematics or related field; Advanced Degree Preferred
  • Minimum 10 years experience in software tools architecture and development
  • Hands-on architecture and development experience with Hadoop ecosystem technologies: HDFS, NFS, Map/Reduce, Spark, Impala, Hive, Pig, Hue, Flume, Kafka, Oozie
  • Proven track record building cloud-based, multi-tenant scalable enterprise solutions
  • AWS cloud experience; EC2, S3, RDS, Lambda, VPC
  • Excellent knowledge in the following fields, technologies, and tools:
    • Different software development models and life cycle
    • Application architecture
    • Relational / columnar database design
    • Web development (J2EE/Java, Python, REST APIs, HTML, CSS, , ReactJS)
    • IT Roadmaps, Blueprints, Solution architecture, SOA Design and implementation, Integration Architecture, End to End Solution Design, UML, RUP, RSA, Design Patterns, Messaging middleware.
  • Desirable experience and knowledge:
    • Hierarchical, relational, and NoSQL databases,
    • Cloud and data-warehouse software, AWS Redshift/EMR
    • Analytics technologies:Spark, Storm, R, Python, AlteryxTableau Server, dashboard/visual integration with custom Apps
  • Additional skills:
    • TOGAF or equivalent certification 

Apply Now