Principal Software Engineer

Principal Software Engineer II - JavaScript

Job Information
Our challenge is to use modern tools, techniques, and methods to develop, modify, and/or update complex and extremely powerful systems.  Our customers and partners need applications that enable them to easily operate and expand their automotive business and efficiently manage their teams.  Equally important is our visualization of clients’ needs to provide them the information they need to understand how their business is performing and what changes could be made to improve their performance.
DealerSocket is seeking experienced software engineers who can leverage their skill-set to grow as part of an Agile SCRUM team.  They must be a quick learner and love challenging themselves to constantly raise the bar.  This opportunity requires strong problem-solving skills, an aptitude for team collaboration and open communication as they deliver efficient, well designed, and tested software for a positive user experience.  Innovative thinking and well-designed products with an emphasis on performance are a necessity to give our users the best experience possible.

Key Job Functions/Requirements
Hands-on experience with construction of complex engineering solutions and knowledge of software development methodologies
Deep dive on large-scale SaaS products and be prepared to assist architecture with setting the vision, organizing and evolving the code-base for the entire product
Collaborate and communicate effectively with product, infrastructure, DevOps, architecture, and engineering to guide an initiative's technical direction
Along with Architecture, meet one on one with tech leads to provide guidance and ensure work is moving towards vision
Assist in establishing and supporting coding standards
Stay current with industry standard tools and technologies
Engage in tribe-level ceremonies, including planning, grooming, product demonstrations, and retrospectives
Perform risk analysis on work items defined for an initiative
Assist in enabling and maintaining the continuous delivery pipeline and exhibit a DevOps mindset to enable autonomy of agile scrum teams
With guidance from Architecture, perform feasibility studies and proofs of concepts on new solutions or techniques which may be employed
Respond to trouble/support calls for production applications in order to make quick repair to prevent application outages
Create and/or update documentation to support development efforts. Documentation may include detailed specifications, implementation guides, architecture diagrams and/or design documents
Excellent time management skills and ability to prioritize
Able to translate customer and business needs to technical solutions
Resilient to change
Establish User Personas in collaboration with Product Management
Mentor and train other Software Engineers
Be a resource for multiple challenging software engineering projects at a time
Is a positive influence to unite teams to achieve success – has a “Can do” attitude
Maintain a holistic view of the project, never losing sight of the smaller details
Proficient in the following:
General foundation in enterprise computing including networking, infrastructure, virtualization, web tools and technologies, databases
Object oriented design principles (SOLID), design patterns, enterprise integration patterns, Microservice architecture
Familiarity with non-functional software qualities (resilience, maintainability, etc), and experience implementing related design patterns and analyzing trade-offs


Bachelor’s Degree in Computer Science or equivalent

Minimum Experience
10+ years

Specialized Knowledge & Skills
Skilled in CSS, HTML, ECMAScript / ECMAScript Next or TypeScript, and related technologies
Experience with TypeScript-based open-source front-end web application platform (i.e. ReactJS, Redux, Redux-Saga, Redux-Form, JSS, Ember)
Experience with front-end testing frameworks such as Jasmine, Karma, CasperJS
Experience with Agile Management Tools (i.e. Confluence, JIRA, VersionOne)
Experience with version control management and processes (i.e. BitBucket, Git, GitFlow, SVN)
Experience with Web Services and Serialization (i.e. XML, JSON, SOAP, REST)  
Familiar with modern dev tools (i.e. Bower, Gulp, Grunt, npm, Babel, Webpack, Yarn)
Familiar with Material-UI design
Familiar with Redux, Redux-Saga, Redux-Form or similar state managers
Familiarity with Java or Perl is a plus

Additional Knowledge & Skills
Good understanding of specifics of markup for modern browsers. 
Familiarity with PHP or Python is a plus
Experience with test automation for Front-End (unit and integration test suites)
Experience with JS task runners (Gulp, Grunt, Brocoli)
Experience with Cloud Application Design (i.e. AWS, Serverless, Container, Docker…)
Experience with NodeJS

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 to learn more about how you can join our winning team!

Apply Now Copy Link