Senior Software Developer - C# .NET (Real-time Monitoring)
BGC Engineering Inc. (BGC) is an international consulting firm that provides professional services in applied earth sciences. We work together as one team, with coordination and integration of all offices and disciplines. Currently there are over 600 employees, consisting of professional engineers, geoscientists, technicians, software developers, administrators, accountants, health & safety and human resources professionals. BGC has offices in British Columbia, Alberta, Ontario, New Brunswick and Nova Scotia, as well as Colorado, US and Santiago, Chile.
Our flat management structure and unique culture create a work environment where employees can grow professionally, work with fantastic teams and enjoy perks such as company-wide clubs and mentoring opportunities.
Reporting to the Software Development Manager, the Senior Software Developer – C# .NET (Real-time Monitoring) will play a key role in contributing to BGC’s core software product, by developing the interface between our real-time monitoring systems and our web application Cambio. This position will design and develop the optimal way for our systems to communicate over 100k pieces of information every five minutes and send out real-time alerts via email, text, or phone calls.
To learn more about the software development team at BGC, click here: http://www.bgcengineering.ca/software.
- Develop features using Azure to synchronize data between BGC’s main web application, Cambio and our back-end real-time monitoring system
- Create new scalable cloud solutions for our real-time monitoring services to communicate with Cambio
- Liaise between the web application development and back-end real-time monitoring system development teams to design and develop the most optimal way to communicate the large amounts of data we need to process in real-time
- Maintain the existing link between our real-time monitoring services and our Cambio application
- Work with stakeholders to design and develop robust and reliable real-time alerting systems
Required Education, Experience & Competencies
- Bachelor's Degree in Computer Science, Engineering or related technical discipline
- 7+ years of relevant software development experience
- Experience with programming in C# and familiar with the .NET server-side stack
- Experience with one or more database systems such as SQL Server, Oracle, MySQL, etc.
- Experience with a "code first" data approach using .NET Entity Framework, SQL Alchemy, Loopback.io, etc.
- Experience with serverless computing (Azure Functions, AWS Lambda, Google Cloud Functions)
- Experience with microservices architecture
- Experience with Azure Message Bus, Azure Event Hub, Kafka, etc.
- Experience with Linux, git, and a basic knowledge of bash
- Basic understanding of Kubernetes
- Basic DevOps knowledge
- Familiar with using timer triggered functions
Desired Education, Experience & Competencies
- Experience with Python would be an asset
BGC offers a wide range of benefits and perks:
- Comprehensive benefits package
- Flexible hours
- Parental leave top-ups
- Social activities
- Professional development opportunities
- Mentoring opportunities
- Flat management structure
- Ability to work with fantastic teams and industry leaders
- Casual and professional work environment
BGC is an equal opportunity employer. We celebrate diversity and are committed to creating an inclusive environment for all employees.
If you are qualified and interested in a career with BGC, please send your resume and a cover letter in confidence to: email@example.com.
If you need assistance or an accommodation due to a disability, you may contact us at firstname.lastname@example.org or call the HR Team at 604-684-5900.