Sr. Software Engineer
- Full-time
- Compensation: USD 120000 - USD 160000 - yearly
Company Description
BCC Software develops innovative software and data solutions that power critical customer communications for organizations across North America. With more than 45 years of industry leadership, we combine deep postal expertise with modern technology to help our customers streamline operations, improve efficiency, and drive growth.
Job Description
Job Objective
BCC Software is seeking a senior engineer who can sustain and evolve business-critical C/C++ products while helping shape their path to a modern Microsoft technology stack. The ideal candidate combines strong software engineering fundamentals with practical experience in C# and .NET, sound architectural judgment, and experience using AI responsibly to improve engineering productivity, modernize and create new product capabilities. This is a hands-on role with meaningful technical influence; prior team leadership or technical mentorship is a major plus.
Essential Functions
- Enhance, troubleshoot, and maintain established C and C++ applications across Windows and Linux environments.
- Design and deliver new capabilities using C#, modern .NET, service-oriented architecture and contemporary APIs and integration patterns.
- Assess legacy components and help define pragmatic modernization approaches, including incremental replacement, service extraction, interoperability, and risk-managed migration rather than unnecessary rewrites.
- Use AI-assisted engineering tools appropriately for code comprehension, refactoring, test generation, documentation, defect analysis, and delivery acceleration while protecting source code, customer data, and intellectual property.
- Write, review, test, and document maintainable code, including automated unit, integration, and regression tests.
- Estimate and size user stories, define technical tasks, and consistently meet individual and team commitments within an Agile Scrum delivery model.
- Partner with Product Owners and QA to refine requirements, define acceptance criteria, identify technical risks, and plan stories, epics, and releases.
- Take ownership of complex problems from investigation through production validation, not just isolated coding tasks.
- Contribute to architecture discussions, engineering standards, CI/CD improvements, security practices, observability, and cross-team initiatives.
Technical Leadership & Collaboration
- Provide technical direction on complex work, facilitate design and code reviews, and help the team make balanced decisions across delivery speed, maintainability, reliability, and security.
- Mentor engineers through pairing, feedback, knowledge sharing, and practical guidance in both legacy and modern technologies.
- Lead a workstream or small project team when needed, coordinate dependencies, surface risks early, and communicate progress clearly to technical and non-technical partners.
- Help establish modernization patterns that other teams can reuse, including coding standards, testing approaches, migration playbooks, and definition-of-done expectations.
Qualifications
Required Qualifications
- 15+ years of professional software development experience, including meaningful hands-on experience with C and/or C++ in production systems.
- Ability to read, diagnose, safely modify, and test a mature C/C++ codebase; familiarity with compilers, linkers, debuggers, memory management, performance profiling, and native interoperability.
- Professional experience with C# and .NET or demonstrated ability to apply comparable object-oriented and service-development experience to the modern Microsoft stack.
- Experience developing for Windows and Linux and working with relational databases, data modeling, and application integration.
- Experience with automated testing, mocking frameworks, source control, pull-request reviews, CI/CD pipelines, and modern branching strategies.
- Working knowledge of secure software development practices, dependency management, secrets handling, authentication/authorization, and common application security risks.
- Strong analytical, written, verbal, and interpersonal communication skills, with a methodical approach to ambiguous technical problems.
Preferred Qualifications
- Hands-on experience with ASP.NET Core, REST APIs, Entity Framework Core, Azure SQL, Service Bus, Functions, App Service, containers, or comparable Azure services.
- Experience modernizing desktop, native, or monolithic applications through staged migration, APIs, services, or modular architecture.
- Experience with GitHub, GitHub Actions, GitHub Copilot or comparable AI coding assistants, and governance practices for enterprise AI use.
- Experience evaluating or implementing generative AI capabilities using Azure AI Foundry, Azure OpenAI, retrieval-augmented generation, prompt evaluation, content safety, or human-in-the-loop patterns.
- Experience with Python, PowerShell, telemetry, and production diagnostics.
- Previous experience as a technical lead, feature lead, team lead, mentor, or acting lead. Formal people-management experience is welcome but not required.
Additional Information
Supervisory Responsibility
This position does not have formal supervisory responsibility at hire. The role may provide technical leadership, mentorship, work coordination, and project-level guidance. Candidates interested in growing into broader team leadership are encouraged to apply.
Location
This position offers a hybrid work option for Rochester-based employees and may be remote for employees outside the area. Occasional travel to BCC Software headquarters in Rochester, New York, may be required.
Position Type and Expected Hours of Work
Some flexibility in hours is allowed, but the employee must be available during core business hours, Monday through Friday, 8:00 a.m. to 5:00 p.m. Eastern Time. Evening or weekend work may occasionally be required as job duties demand.
Physical Demands
This is primarily an office-based role requiring extended periods of sitting, computer use, typing, writing, and verbal and written communication. Occasional standing, walking, or bending may be required. The employee must be able to lift up to 10 pounds regularly and up to 25 pounds occasionally. Reasonable accommodations may be made to enable qualified individuals to perform the essential functions of the role.
AAP/EEO Statement
BCC Software provides equal employment opportunity to all individuals regardless of age, race, color, creed, religion, ancestry, sex (including pregnancy, childbirth, or related medical conditions), gender, sexual orientation, gender identity or expression, national origin, veteran or military status, marital status, genetic information, physical or mental disability, familial status, reproductive health decisions, status as a victim of domestic violence, or any other basis protected by applicable law. The company takes affirmative action to ensure that applicants and employees are treated without regard to these characteristics. Discrimination of any type will not be tolerated.
By clicking the link above or any third-party link within this posting, you are leaving this site and going to a third-party website where the third-party website's terms and privacy policy apply