|Company Name||Avalara (view profile)|
Please note our success, in part, stems from challenging the status quo. We have an extraordinary ability to eliminate obstacles our customers face, but we like to have fun in the process. That’s when our Tiki Lounge comes in handy, not to mention our well-stocked game room and bi-weekly summer barbeques.
Sound intriguing? We’d love to hear from you.
We are looking for technology generalists with the right aptitude and attitude for leading Avalara in new and bold directions. Avalara needs talented software engineers to complete our newly formed Architecture Team. The Architecture Team is tasked with strategizing for, and executing on, exciting future technologies and products paramount to the success of our company.
This position requires its practitioner to have a depth and breadth of thought that differentiates them from the status quo developer. Our Architects will be designing highly distributed, mission critical systems that will be deployed in both traditional data centers and cloud-based infrastructures; but more important, our Architects will be teaching the rest of the Development staff how to build these systems themselves. As a member of the Architecture Team you will be formulating and codifying practices, techniques, and specifications representing the next 5 years of our technology future.
The ideal candidate will be proficient in the fundamentals of computer science, with a working knowledge of data structures and algorithms. You will have shipped at least one large software project and will demonstrate strong competency in both statically- and dynamically-typed languages (you may be asked to code in C one day and Python the next). Most critical of all is your ability to articulate yourself in both oral and written form: you will be expected to manifest clear and succinct communication in multiple forums.
Note: during the recruiting process, you will be asked to build and deploy an example project, as well as craft some example written communication.
• Teach, coach, and mentor other members of the Development organization
• Prepare technology whitepapers and position documents
• Write solid, maintainable code
• Guide other developers in the writing of solid, maintainable code
• Formulate and document system and application designs
• Research and develop algorithms and software methodologies for remedial or strategic employment
• Perform detailed system performance and behavior analysis
1. One or more verifiably large software projects with major contributions demonstrating both architecture and implementation prowess.
2. Needn’t have a Computer Science degree but must be familiar and comfortable with theory.
3. Specific experience with SQL or non-traditional data storage technologies, to the extent their internal workings are well understood.
4. Experience deploying and managing distributed systems within a commercial-grade cloud service platform. Preference is AWS or Azure but will accept experience from anything representative.
5. Have some wire-level protocol and networking knowledge beyond HTTP, preferably with good understanding of TCP and its associated protocols.
6. Demonstrated mastery of diagnostic and monitoring tools, including such tools as Wireshark, Valgrind, gdb, gperftools, or VTune.
7. Versant in both Windows and Linux, preferably with knowledge of internals of both.
8. Fluency in several industry-standard statically- and dynamically-typed languages, with two or more of the following being acceptable:
• C or C++
• Python, Ruby, or Perl
• Assembly language, CISC and RISC
• C# or other .NET language(s)
• Functional languages such as Clojure, F#, Haskell, Lisp, or ML
• Embedded languages such as Lua or Tcl
• Any of the “Esoterics”
Avalara is an Equal Opportunity Employer. All qualified candidates will receive consideration for employment without regard to race, color, creed, religion, age, gender, national orientation, disability, sexual orientation, US Veteran status, or any other factor protected by law.