Senior Software Engineer EDW

8901 - Corp Office West Crk - 12800 Tuckahoe Creek Parkway, Richmond, Virginia, 23238

CarMax, the way your career should be!
Do you want to influence and build the data transformation of a growing Fortune 500 company? Over twenty years ago, CarMax disrupted the automotive industry and to this day remains the undisputed market leader in a $500B+ industry. With best-in-class information technology, operational excellence, customer satisfaction, and associate engagement, CarMax is well positioned for continued growth. CarMax is looking for a Solutions Architect to be part of a team responsible for the integration and refinement of operational data that enables data science, machine learning, and artificial intelligence at CarMax.

About the CarMax Home Office

Located in Richmond, there is nothing else like living in Virginia's capital. It is the center of state government, a progressive urban centerpiece, and a unique historical gem all at once. You'll be able to experience one of the country's best cities for dining, shoot the rapids of the James River, ski the Blue Ridge mountains, enjoy the Atlantic coastline, and enjoy excellent culture, arts, schools, and living choices.

CarMax is committed to hiring innovative people with strong values of integrity, transparency and respect. We are also proud to be one of FORTUNE's 100 Best Workplaces for Millennials and 50 Best Workplaces for Diversity. And thanks to our amazing associates, we have been recognized as one of the FORTUNE 100 Best Companies to Work For - 14 years in a row!

The Senior Software Engineer will be responsible for the development, implementation, maintenance, and support of software solutions. The primary responsibilities of this position revolve around ensuring that application development efforts consistently meet CarMax® business requirements, direction, and standards. Associates in this position must be experienced in advanced programming, design patterns, and databases. This position reports to a Team Manager or Manager.

Associate will be a key hands-on contributor in the software development life-cycle, performing analysis and design as well as influencing development teams to achieve project goals. Associate is a proven team player and highly qualified to identify development tasks across the application stack. Software Engineers have a passion for their craft and a passion for continued education.

The character of this position is one of hands-on development and the oversight of the technical tasks of others. This position functions as an expert in supporting an area of the business.


  • Engages and leads team through support issues quickly and efficiently
  • Ability to participate in a 24x7 on-call rotation as scheduled, and the ability to perform after hours support as needed
  • Able to lead support conference calls
  • Passionate about support & ownership of all areas under their responsibility
  • Can effectively categorize support problems and respond with the appropriate level of urgency
  • Functions as the second level support in after-hours calls as the support expert for their platform of mastery
  • Ability to mentor others in the business processes implemented in the team's applications in order to provide resolution to support problems
  • Able to effectively estimate the time it will take for themselves and others to perform tasks and are able to influence the team's work to be completed within those timeframes
  • Consistently delivers on established individual velocity and team goals
  • Consistently shown the ability to mentor others in coding best practices and design patterns
  • Stay abreast of new technical trends in related technologies
  • Consistently mentor others in the production of all artifacts required of a SDLC
  • Effectively estimate time required for related technical efforts for projects of all sizes and delivers multiple complete solutions as well as estimated and actual costs
  • Functions as the second level support in after-hours calls as the support expert for their platform of mastery

Technical Expertise:
  • Build, design, and analyze simultaneous applications of any size throughout their application environment
  • Responsible for reviewing and mentoring the successful work of others in evaluating the business objectives, developing user requirements and generating technical specification for all applications within their application environment
  • Ability to engage in a critical support situation and effectively, efficiently, and quickly drive to a successful resolution
  • Proven experience leveraging existing software, development of reusable components, and elimination of redundancy in designs throughout their application environment
  • Experience in multiple large projects in leading the definition, selection, and implementation of enterprise tools, technologies and processes
  • Experience in reviewing and mentoring the successful work of others in evaluating the business objectives, developing user requirements and generating technical specifications
  • Expert in data storage solutions, including data migration, scripting, and data security
  • Builds, designs, and executes unit tests to ensure the ultimate level of excellence
  • Ensures code of self and others is compliant with security standards
  • Able to design and execute performance tests
  • Expert in designing end-to-end systems, from the top to the bottom of the stack
  • Expert in the design & deployment of complex SQL objects and relational databases design

Customer Interaction/Business Knowledge:
  • Complete understanding of all the business processes implemented in the team's applications and consistent ability to keep business objectives in focus
  • Ability to understand and document business requirements as well as provide a proposal of the appropriate solution
  • Complete understanding of the business processes supported by the application environment
  • Ability to lead customer/project meeting(s) for highly complex project definitions, needs assessment and design review

  • Able to influence the technical direction of others in order to successfully meet the business objectives of medium & large projects
  • Drives technical consensus within the team
  • Proven ability to mentor developers in best practices, procedures, and concepts
  • Ability to develop and deliver technical training and business understanding for developers
  • Ability to drive through obstacles and time constraints to successfully deliver a project to completion
  • Demonstrated ability to deliver solutions through building consensus in both business and technical perspectives
  • Ability to drive efficient resolution for system outages as well as performance and functional shortcomings
  • Assists in the budgeting process authoring technical business value documents when needed
  • Facilitates code review sessions and reviews best practices


EDW (Enterprise Data Warehouse):

Expertise in the following required:
  • In depth experience designing and implementing a large data warehouse
  • Has a proven track record of building data marts.
  • Experience designing and implementing a physical data model from the logical dimensional data model as star schemas in a relational database(modeling data into dimensions and fact tables)
  • Experience with Teradata or any analytical platform.
  • ETL Processing (Informatica/Abinito/ Other)
  • Experience with one or more Business Intelligence tools such as Tableau or Microsoft BI.
  • Hands-on experience programming in Python or other procedural language.

  • Experience with big data tools such as Hadoop, Hive, Spark, etc., as well as knowledge of more traditional warehouses.
  • Experience delivering data pipelines and managing resulting data stores using managed cloud services (like AWS or Azure).
  • Experience with modern data pipelines, data streaming, and real time analytics using tools such as Apache Kafka, AWS kinesis, Spark Streaming, ElasticSearch, or similar tools.
  • Knowledge of machine learning tools and concepts.


To perform this position successfully, an individual must be able to consistently execute each essential duty & responsibility as well as consistently show proficiency with the following qualifications. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

  • Demonstrated project management ability in leading medium to large sized project teams (often multiple projects simultaneously)
  • Advanced knowledge of team software development concepts and techniques and the ability to communicate those concepts to junior team members including patterns in the areas of security, scalability, and usability
  • Experience in creating and developing software and effectively communicating the rationale behind the designs
  • Proven experience with working effectively with multiple areas of the business community in order to gather requirements and translate those requirements into software designs
  • Ability to interact with and direct the tasks of outside consultants in a professional manner while helping them drive to successful project completion
  • Demonstrated ability to compare and contrast alternative approaches to meet objectives while assessing risk both quantitatively and qualitatively
  • Possess strong organizational and time management skills
  • Demonstrated flexibility

Education and/or Experience:

Years of experience

Typically 8+ years of full stack application development experience required

Education preference

4 year degree in IT related course of study

Computer skills

Preferred experience in appropriate development language (see Specialty section)

Certifications, etc.

2 Appropriate Certifications Required (see Specialty section)

RDBMS experience

Typically 5+ years of database development experience (see Specialty section)

Sponsorship Note:

Candidates must be legally authorized to work for any U.S. employer on a full-time basis. Sponsorship will be considered for this specific role

About CarMax

CarMax disrupted the auto industry by delivering the honest, transparent and high-integrity experience customers want and deserve. This innovative thinking around the way cars are bought and sold has helped us become the nation's largest retailer of used cars, with over 200 locations nationwide.

Our amazing team of more than 25,000 associates work together to deliver iconic customer experiences. Along the way, we help every associate grow their career and achieve their best, at work and in their community. We are recognized for our commitment to training and diversity and are one of the FORTUNE 100 Best Companies to Work For®.

CarMax is an equal opportunity employer, and all qualified candidates will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, genetic information, national origin, protected veteran status, disability status, or any other characteristic protected by law.

Upon an applicant's request, CarMax will consider reasonable accommodation to complete the CarMax Job Application .

If you have technical problems when submitting your application, please contact us by phone (888) 922-7629 ext. 3888 or email

Back to top