Bluebeam empowers people to advance the way the world is built by creating smart software solutions for the construction industry. The Sr. Software Engineer will drive the development and enhancement of the Revu desktop application, collaborating with cross-functional teams to ensure alignment with business objectives and customer needs.
Responsibilities:
- Develop and Maintain Code: Write clean, scalable, and efficient code, contributing to new features and improving existing functionality
- Collaborate with Teams: Work closely with cross-functional teams (design, product, QA) to gather requirements, brainstorm solutions, and implement changes
- Code Reviews: Participate in code reviews to ensure quality standards are met, learn from feedback, and improve coding practices
- Debugging and Testing: Assist in troubleshooting and resolving bugs by debugging code, writing unit tests, and contributing to integration testing
- Documentation: Create and maintain technical documentation for code, APIs, and processes, ensuring clarity for future team members
- Continuous Learning: Stay up to date with emerging technologies, programming languages, and software development practices to enhance your skills and knowledge
- Production Support: Participate in engineering on-call rotation for the Revu application
Requirements:
- 8+ years of professional software development experience
- 3+ years of experience in Windows application development in C#/.NET
- Demonstrated ability as a generalist who can flexibly work with multiple programming languages and cloud technologies
- Experience working in a fully automated CI/CD environment
- Experience using AI tools for software development
- Ability and interest in working with complex technologies such as image processing, 3D rendering, or AI
- Able to define test strategies and methods
- Empathy with customers and the ability to create a delightful user experience
- Ability to effectively communicate technical concepts to team members and stakeholders with varying levels of technical expertise
- Demonstrated analytical thinking and a proactive approach to troubleshooting and resolving issues
- Strong team player with a desire to learn and contribute in a collaborative environment
- Willingness to take on challenges, learn new technologies, and adapt to the dynamic nature of the software development process
- Ability to prioritize tasks, manage time effectively, and deliver quality work