- Develop enterprise-level software that meets business needs using primarily Microsoft technologies
- Conform to industry best practices for code construction, software security, data security, scalability, and performance
- Interact with stakeholders to understand business requirements and accurately translate them into working code
- Provide reliable estimation of work and commit best efforts to delivering work in alignment with those estimates
- Consistently maintain a high level of quality in developed code
- Collaborate with other technology professionals (e.g., developers, testers, infrastructure personnel, DBAs, external vendors, etc.) on key architectural decisions and delivery of work
- Build collegial and effective working relationships with coworkers
- Demonstrate diligence, initiative, and follow-through in the execution of job duties
- Maintain up-to-date technical knowledge and awareness of relevant emerging technologies
What software tools/skills are needed to perform these daily responsibilities?
- Extensive experience developing full-stack web, desktop, and server applications using Microsoft .Net and SQL Server
- Thorough troubleshooting and debugging skills required
- C#, MVC, WPF, WebAPI, .NET Core, and object-oriented programming required
- T-SQL, query optimization tools and techniques, relational database design, Entity Framework, and LINQ required
- HTML, CSS, JavaScript, and jQuery required
- Experience practicing SOLID object-oriented design principles, implementing service-oriented application development techniques, and applying common design patterns and architectures (e.g., repository, factory, onion, microservices, event-driven, etc.)
- Visual Studio, SSMS, TFS/Azure DevOps, and Git required
- Proficiency with work item and defect tracking management systems (e.g., Team Foundation Server, Azure DevOps, Jira, Rally, etc.)
- Experience working on complex systems integration projects that use a variety of standard Microsoft stack technologies (WCF, Web API, SSIS, BizTalk, etc.)
What skills/attributes are a must have?
- All of the above software related skills
- Four-year degree in a related field or equivalent experience
- Excellent verbal and written communication skills required
- Thorough troubleshooting and debugging skills required
- Engaged learner with the ability to quickly absorb and understand complex information
- Strong attention to detail and track record of producing quality work
- Team player with a great work ethic
- Ability to quickly identify and communicate risks
- Self-motivated and able to perform without significant supervision
What skills/attributes are nice to have?
- Experience operating in both fast-paced, mission critical production environments and greenfield project initiatives preferred
- Experience working in Continuous Integration/Continuous Delivery Agile environments preferred
- Experience operating in an Agile environment preferred
- Experience in software architectural design preferred
- Experience with containerized microservice preferred
- Experience with Azure Service Bus, Azure Kubernetes Service (AKS), AWS SQS/SNS, or JMS preferred
- Experience with Azure Platform-as-a-Service environment preferred
- Experience prototyping and developing engaging user interface designs a plus
- Experience with coded test automation (coded unit tests, Selenium, Protractor, etc.) a plus
- Relevant Microsoft and Agile certifications a plus