Senior Software Engineer
We are looking for a Senior Software Engineer to join Ellevation’s technology team. You will play a key role in building dynamic web applications and services, help implement complex data and API integrations, and drive the conception-to-design-to-implementation product development process.
You will help define our software architecture principles and standards through direct coding activities. Your ideas will translate our product and corporate strategy into technical solutions and engineering best practices. You will research and evaluate new technologies and determine how and where they will apply to our engineering roadmap.
As an integral member of our engineering group, you will be asked to create, contribute to, and own pieces of our software development platform and ecosystem. Just as important, we are looking for someone who wants to be in a startup, has tremendous communication skills, and is motivated and a self-starter.
We value best-practice software engineering principles such as continuous integration, loose coupling, and SOA. As a small technology company, we seek individuals who are willing to be cross-functional, hands-on in multiple areas, and a technical thought leader for the organization. You will be testing, releasing and supporting the code that you develop.
You are expected to take on and own vital initiatives and duties for the company, spark and lead discussion, and help establish the company’s technical direction while providing timely and quality support and education across the organization. This is a tremendous opportunity to build the engineering foundation of the company.
Requirements
At least 6-10 years of technical expertise, including recent engineering experience with high-performance, enterprise-facing websites and/or SaaS platforms.
Demonstrated success working in and promoting a rapidly changing, collaborative, and iterative product development environment.
Values clean and elegant but pragmatic and effective software design.
Proven success at an internet startup or early stage company.
Strong interpersonal skills and ability to collaborate cross-functionally.
Ability to work hard while maintaining attention to detail, with a sense of urgency.
Experience working within an Agile organization (scrum, “lean”, etc.)
BS in Computer Science or equivalent degree.
Very strong communication skills; ability to communicate clearly both orally and verbally to audiences of varying technical knowledge.
Commitment to continuous improvement and the mission; desire to focus talents on helping improve outcomes for others.
Desired Skills and Experience
- C#, ASP.NET MVC, .NET programming
- Design patterns, OO concepts and applications, refactoring and Software as a Service (SaaS) development
- SQL Server (T-SQL, SSIS, query tuning and optimization)
- XML/XSLT
- Web application development using IIS 7/7.5, CSS, HTML5 and JavaScript frameworks such as Angular, Knockout, jQuery
Bonus points for any of the following experience/expertise:
- Entity Framework
- Elasticsearch/Lucene
- JSON/REST-based web services and API design
- SVN/Git, MSDeploy, CCNet, NAnt, NUnit
- Splunk/syslog
- CouchBase or other caching solutions
- Message-based or event-driven architectures
- Test automation frameworks (for example: Selenium, Fitnesse)
- ETL/MDM and data integration
- Scripting with Powershell or Python
- Mobile browser website development
- Educational software such as SIS
Other skills:
- Comfortable in front of a whiteboard and discussing both high level architecture and as well as coding/algorithms;
- Has been an effective team lead in delivering products in a fast-paced startup or small company. Good analytical problem solver and a team player.
- Can identify creative and innovative solutions in a high-availability, rapidly-scaling enterprise environment.
- Can add significant value in a direct and tangible way to code reviews, design reviews, and analyzing product specs.