Software Architect

POSITION SUMMARY
Software Architects contribute to the overall architectural vision and ensure the leveling up of the technological maturity of our products and enterprise capabilities. They are expected to engage with teams to define and provide guidance for architectural runway epics, create proofs of concept for and introduce new technologies, define best practices and patterns for new technologies, lead the adoption of enterprise services, and contribute new enterprise services and capabilities. They also mentor engineers in those best practices through example, guidance, and training.
RESPONSIBILITIES
Solve complex software engineering tasks
Take the lead on challenging software engineering projects to raise technological maturity of products and move codebase and practices towards vision
Provide guidance and tools to teams for troubleshooting and solving code level problems quickly and efficiently
Establish patterns and tools for automated unit and integration tests
Define key priority architectural epics for DealerSocket's CRM product and review tech debt epics surfaced by teams
Define coding guidelines and best practices and specify/implement code reformatters, static analysis and coding style
Ensure 100% of deliverables are delivered through an automated CI/CD pipeline
Collaborate with members of tribe to ensure success (Product Owners, Engineers, QA, Designer)
Communicate effectively with team members, stakeholders, and external customers
Stay current with industry standard tools and technologies
Perform risk analysis on work items completed by scrum teams
Ensure key agile practices such as release on demand, feature flags, and migrations are designed into deliverables
Mentor and train Software Engineers
Provide insight on engineer technical abilities and offer leveling up recommendations to Director of Engineering
Participate in annual DealerSocket Architecture Summits
Understand and contribute to DealerSocket's enterprise architecture vision
Conduct one-on-ones with tech leads from each scrum team to evangelize architecture objectives
Encourage adoption of patterns, tools, and templates and provide feedback on designs
Provide architectural expertise for the implementation of key initiatives under the direction of a Director of Engineering
Provide architectural vision at the product level
Participate in product backlog reviews and quarterly PI planning
REQUIRED SKILLS AND ABILITIES
EDUCATION

Master’s Degree in Computer Science or equivalent experience and knowledge
AWS certification preferred, other certifications including TOGAF, Microsoft MCSD, ElasticSearch, Kafka

EXPERIENCE
10+ years’ experience in Software Engineering and Architecture
Experience leading engineering teams
Engineering and Implementation of enterprise level software applications
Experience creating Software as a Service (SAAS) products
Experience working with agile/Scrum methodologies, SAFe preferred
SKILLS & ABILITIES
C# .NET, Java as main language with knowledge of other languages including mobile development languages (Kotlin, Swift, Objective C) 
LINQ, Generics, Lambda expressions, extension methods, attributes
Some Machine Learning highly recommended
Working with and troubleshooting hybrid cloud environments
AWS Services and resource, examples - ECS, IAM/Cognito, Lambda, ALB's, CloudFront, Route53, CloudFormation, RDS, Dynamo, SNS
AWS Networking - basic understanding of VPC's, Security Groups, Subnets, Internet Gateways, DirectConnect
Stream processing with Kafka, other pub-sub and streaming technologies 
Document schema and index definition using ElasticSearch
Maintain and extend existing automated build processes using Bitbucket pipelines, Cloudformation and other CI/CD tools
ORM Frameworks (Entity Framework, NHibernate)
IoC containers e.g. Unity, MEF, Ninject
Web Services and serialization, XML, JSON, SOAP, WCF, REST
Unit testing best practices
SOLID and other principles with emphasis on ensuring teams code for testability and maintainability
Design patterns and object-oriented programming
SQL Server and the SQL language
Memory management, performance tuning, profiling, and scalable patterns
Threading (traditional and TPL), async patterns (TAP), and .NET thread safe collections
Solid understanding of networking and infrastructure
ASP.NET MVC and Web API
Angular and/or React JavaScript libraries
HTML5 and CSS3
OTHER ABILITIES
Works effectively in a team setting
Works efficiently across distributed teams
Aptitude for learning new technologies and concepts
Excellent time management skills and ability to prioritize
Manage several activities in parallel
Strong verbal and written communication skills
Strong organizational skills
Able to translate customer and business needs to technical solutions
PHYSICAL DEMANDS (TRAVEL, ETC)
Available to solve critical issues as necessary
Quarterly travel may be required for architectural summit/meetings
PERKS & BENEFITS
Medical, Dental, Vision, 401k
Company-paid Life & Disability Insurance
Paid Vacation, Sick Days & Holidays
Paid Parental Leave
Wellness Program that pays up to $200 per year
Collaborative & Open Office Environment
ABOUT DEALERSOCKET
DealerSocket is a leading provider of software for the automotive industry. Our mission is to drive the future of automotive, by simplifying the experience for its customers and partners with a suite of seamlessly integrated products. DealerSocket’s suite of products includes advanced Customer Relationship Management (CRM), innovative Digital Marketing and Websites, robust Vehicle Inventory Management, insightful Analytics Reporting, and solutions to streamline dealer operations such as Desking, Credit Reporting, Compliance, and a Dealer Management System (DMS) for dealers of all sizes. To put it simply: we help dealers sell and service vehicles more profitably, while improving their customers’ experience. The DealerSocket Team is more than 1,000 employees strong, serving nearly 8,000 dealerships. Visit careers.dealersocket.com to learn more about how you can join our winning team!

Apply Now Copy Link