Indiana University Health Expert Developer - Information Services in Indianapolis, Indiana
On the Enterprise Business Applications team, the Principal Engineer is a C# language expert who is fluent in the C# programming language. The principal engineer should have expert level experience in the following focus areas: Async programming, Entity Framework, Generics, Patterns, Linq, Visual Studio & debugging. You should be more than familiar with the APIs, you should be able to discuss the reasoning behind their design.
Designs, develops, documents, tests, and debugs new and existing software systems and/or applications for internal use under limited supervision. Serves as the expert technical resource on development projects. Participates in full development life cycle including requirements analysis and design. Writes technical specifications based on conceptual design and stated business requirements. Supports, maintains, and documents software functionality. Identifies and evaluates new technologies for implementation. Analyzes code to find causes of errors and revise programs as needed. Participates in software design meetings and analyze user needs to determine technical requirements. Consults with end user to prototype, refine, test, and debug programs to meet needs. Provides subject matter expertise in complex database query skills such as SSIS, SRS, Stored Procedures or other complex queries to provide technical and business teams with requested data. Serves as the subject matter expert to coach and mentor team members and leaders to feel equipped with the new knowledge and skills to remain current.
This is direct contributor position, expected to be writing a lot of code. It is also a mentoring role, and this position is expected to play a key position in code reviews and systems design.
• Master's degree preferred.
•10+ years of experience or ability to demonstrate commensurable level of experience.
• Requires strong analytical and communication skills.
• Must have an expert level of experience in at least one high-level language such as C#, C++ or Java.
• Requires database experience such as Oracle, SQL Server, etc. Must have advanced experience with at least one ORM tool, preferably Entity Framework.