Senior Software Engineer- Hybrid Boston, MAOnshape ( www.onshape.com ), a PTC SaaS business, is developing a completely new Computer Aided Design (CAD) and design data management platform, delivered globally as SaaS, for professional mechanical designers and engineers. Think SolidWorks meets GitHub meets Google Docs. Our office is in the beautiful 121 Seaport Blvd. building in the heart of Boston's Seaport District. We have a fantastic team of ~100 people working on the Onshape service. You will be working on a one-of-a-kind 3D collaborative CAD application with cutting edge cloud, web, and mobile technologies.
Your Impact:
Using your full-stack expertise, you will develop Onshape's UI and modeling functionality to enable users to do their work in an efficient and intuitive way. Use your skills in programming and algorithms to scale these interactions from simple designs to complex ones with thousands of components. Add value to important workflows in CAD, such as simulation, design and manufacturability analysis, and import/export. You can have a hand in helping Onshape's customers bring bigger and better ideas to life.
Day-To-Day:
- Design, implement and improve code related to Onshape's user interface and communications with back-end services
- Tune performance of existing systems to work with larger and larger datasets
- Consult with other developers on system design and implementation
- Implement back-end services to support new UI, workflow, and modeling functionality
- Work with product definition, user experience, and quality assurance teams to refine project specs
- Participate in regular code reviews
- Fix bugs in all parts of the system
- Meet deadlines, proactively communicating status and roadblocks
- Attend regular team meetings and huddles
Necessary experience:
- 5+ years experience full-stack development (Angular, Spring, REST, NoSQL, etc.)
- Expertise in TypeScript and Java
- Experience with data structures and algorithms
- Experience with large codebases (1 million lines+)
Preferred Skills and Knowledge:
- Effective communication, comfortable working jointly on projects
- An understanding of usability concerns for user interfaces
- Self-sufficient and proactive
- Strong problem-solving skills
Preferred Experience:
- Experience developing a CAD application
- Experience working in an agile environment
- Experience developing in a Mac or Linux environment
Basic Qualifications:
- Bachelor's degree or equivalent work experience