Software Engineer, Front-End
Why are Front-End Software Engineers important at AutoAnything?
Front-end engineers are an essential part of AutoAnything’s product teams and help guide the development and front-end architecture of our applications. We work closely with our UX and UI designers to build high performance and scalable front-ends for our applications. We believe that to be able to deliver quality, disposable software that best serves our customers, internally and externally, that we need to have well-rounded product teams with the best and brightest people.
Our teams build the software that powers all aspects of AutoAnything.com—the leading retailer of specialty automotive accessories and aftermarket parts.
We believe in and practice Scrum (the Scrum.org variety)
We build software using Microsoft technologies like .Net and C#; we try to use the best tool for the job.
We make the most of modern web tools like ES6, Karma, Grunt, Angular, Knockout, and LESS.
We manage our SDLC using a collection of tools like: TFS, Release Manager, PowerShell, and DSC.
We strive for full automation of our software deployments and delivery.
We listen intently, absorb, and participate actively in discussions.
We have the courage to say what we think.
We believe in shaping good judgment in individuals instead of imposing rules across the team.
We have a desire to learn more about our customers, to become experts in our industry, and to leverage technology in ways that set us apart from our competition.
We challenge the status quo when warranted.
We are selfless and do what’s best for our team and our teammates.
We operate with integrity and honor our commitments.
We make an impact by focusing on consistency and results.
Our highest priority is to satisfy the customer through early and continuous delivery of valuable functionality.
Software functionality can only be realized by the customer when it is delivered to them by sound systems.
Nonfunctional requirements are as important as desired functionality to the user’s outcome.
Infrastructure is code, and should be developed and managed as such.
Welcome changing requirements, even late in development.
Deliver working functionality frequently, from a couple of weeks to a couple of days.
Business people, operations, and developers must work together daily.
Build products around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
Working software successfully delivered by sound systems is the primary measure of progress – build and deploy quality, disposable, software.
Agile processes promote sustainable development. The sponsors, developers, operations, and users should be able to maintain a constant pace indefinitely.
Continuous attention to technical excellence and good design enhances agility.
Simplicity–the art of maximizing the amount of work not done–is essential.
The best architectures, requirements, and designs emerge from self-organizing teams.
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
You respect and share our values.
You love working with teams of smart and driven people who are excited to solve challenging problems.
You can talk about complex software systems and have ideas on how to most effectively build quality, performant, and easily supportable software.
You believe that code-reviews, giving them and asking for them, are important to delivering quality a product.
You love to cover your code with adequate unit, integration, and performance tests.
You are adamant about instrumenting and measuring the performance of code to find bottlenecks and improve performance.
You exhibit dogged determination to get to the root of problems.
You care about best-practices and evangelizing them with the team.
You like to research and propose new techniques and methodologies to improve quality and efficiency of our software.
You can clearly convey your thoughts, enjoy presenting what you’ve done, and can cater your message to audiences both technical and non-technical.
You have a commanding grasp of HTML, CSS, and related web technologies; with an emphasis on standards-compliant and performant patterns.
You’ve had exposure to architectural patterns of large, high-scale web applications.
You’ve worked with service-oriented architectures.
You’ve developed RESTful APIs and SDKs.
You’ve developed using MVC frameworks.