Senior Software Engineer/Team Lead (Provo, Utah)

At Aristotle, we are building innovative software systems used by political organizations to reach their constituents. We are looking for a Senior Software Engineer who can take the lead on our latest project, PredictIt—a political futures exchange where you can buy and sell predictions on the outcome of political events. This is an exciting new market and career opportunity.

PredictIt.org is a project of Victoria University, operated with the support of Aristotle International, a U.S. non-partisan political technology company. Its purpose is educational. Prediction markets, like this one, are attracting a lot of academic and practical interest. So, you get to play for fun, investing modest amounts in your informed predictions, while helping the experts better understand the wisdom of the crowd.

PredictIt functions like a stock market where you can buy and sell shares in predictions minute by minute. If you think the event is more likely than the market reflects, you’ll want to buy shares at today’s price and either sell your shares when the price goes up or hold them until the event occurs. You’ll want to do the reverse if you think the event is less likely to happen. You’ll win at PredictIt not only by divining the future, but knowing when to cash in.

Job Responsibilities   

  • Lead and mentor a small team of talented software engineers on best practices, code review, timelines, communicating and monitoring deliverables, etc.
  • Manage and support the operation of all aspects of the software development life cycle (SDLC).
  • Enforce adherence to standards through regular code reviews and automated testing.
  • Responsible for evaluation, change, and tracking of project requirements (and technical risks) through realization in production code.
  • Coordinates with business to ensure requirements are sufficient for development tasks to proceed.
  • Balance technical objectives, business requirements, and timeline targets to deliver scalable, testable solutions.
  • Conduct Architectural & Technical reviews during the SDLC and provide suggestions for performance improvements.
  • Consult with stakeholders to proactively analyze system performance and obtain information on limitations, capabilities, performance requirements, and hardware & software interfaces to develop specifications and resolve technical issues related to performance.
  • Responsible for capacity estimation, capacity planning, modeling, monitoring, analyzing and recommending solutions to performance problems with enterprise business applications.
  • Drive performance engineering as an integral step during the SDLC.

Skill and Knowledge Requirements

  • 5+ years of experience designing, developing and implementing enterprise grade software systems using .NET framework
  • 2+ years of experience leading full-stack development teams
  • Demonstrated experience in design and coding standards, analysis and debugging multi-tiered applications
  • In-depth knowledge of ASP NET, multithreading, OOP (C#) and back end technologies
  • Experience with IIS, SQL Server, Continuous Integration and Continuous Development experience
  • TFS, Build definitions, branches, merging.
  • Unit Testing (Mocking, Test Driven)
  • Ability to identify system bottlenecks with strong troubleshooting, problem solving & reasoning skills.
  • Worked with high volume, highly scalable SaaS infrastructures
  • Demonstrated ability working in DevOps culture and an Agile Scrum team.
  • Ability to coordinate code and follow development standard methodologies
  • Exceptional communication, problem solving, and analytical skills is a must
  • Experience managing or supervising team members in a positive manner

Technology Stack:

  • HTML5, Twitter Bootstrap, jQuery, Vue.js
  • ASP.NET, MVC, Web API, Web Form
  • Enterprise Library, Entity Framework, Linq, T4
  • SSRS, SQL Server 2016
  • Team Foundation System 2012, Visual Studio 2017

 Pluses:

  • Gamification
  • Cryptocurrency
  • Community or Social Media Integration
  • Systems administration experience, including work in large scale computing environments
  • Some understanding of financial markets and market structure

Please click here to Apply.