Job Summary
The Senior Software Engineer-Azure will be a pivotal piece to the development, implementation, and management of technology-based business solutions. This engineer will code, test, and implement configuration changes. They will design software applications to meet both functional and technical requirements, and adapt to new languages, methodologies, and platforms to meet the needs of the project. There may be occasional mentorship for junior engineers.
Ability to prioritize well, communicate clearly, have a consistent track record of delivery and excellent software engineering skills. Must be able to work across multiple facets of the project and juggle multiple responsibilities at the same time. Strong analytic capability and the ability to create innovative solutions.
Essential Job Functions:
- Azure PaaS programming using C# and .NET Core
- Using a Service-Oriented Architecture, develop software solutions that support IPFS’ mission
- Implement best-practices in software development that focus on scalability, performance, and reliability
- Strong understanding and usage of SOLID principles for API development
- Support of changes through SDLC into production
- Troubleshooting and support of production environment
Duties:
- Codes, test, and debugs technology-based applications specifically on the Azure platform
- Analyzes, designs, coordinates and supervises the development of software systems
- Communicates with engineers and support staff regarding programming needs and performance
- Works closely with Product Owners, Quality Assurance engineers, Database Administrators, and DevOps to collaborate on changes and support delivery to production
- Serves as a primary Pull Request reviewer to ensure accuracy and stability/scalability of changes made by other developers on the team
- Improves operations by conducting systems analysis; recommend changes
- Researches and recommends software tools to management
- Communicate effectively with peers
- Support and develop software engineers by providing advice, coaching and educational opportunities
- Participate in and/or lead code reviews as necessary to ensure compliance with established programming standards
Percentage of time spent on duties will be as follows:
- Software development including database design, solution architecture, and project planning – 80%
- Production and incident support – 20%
Supporting Job Functions:
- Production and incident support
- Other duties and responsibilities as assigned
Required Skills:
- Fluent with the following technologies/languages (5+ years)
- C#, .Net Core, SQL Server (stored procedures, user-defined functions, Views, as well as Entity Framework), Git, Azure PaaS services
- Object-oriented programming concepts
- SOLID Principal concepts for API design
- Relational database concepts
- System development lifecycle concepts
- High Analytical and problem-solving skills
- Ability to communicate effectively, orally and writing
Required Skills & Education:
- Degree in Computer Science or equivalent experience
- 5-7 years of web development using C# and SQL Server
- 3+ years of experience building enterprise-scale systems in Azure
- Good communication skills