Junior Software Engineer

ASSA ABLOYPhoenix, AZ
Onsite

About The Position

Join a team creating cutting edge software for the Architectural, Engineering and Construction (AEC) community. You will play a key role in charting the future development of this software application, a BIM (Building Information Modeling) product configurator that guides users through the entire process of specifying and procuring doors, frames and related hardware. This application will be used to analyze, visualize, share and enhance real world construction projects across the globe. Openings Studio is a client application with a centralized server-side database. You will be developing client facing interfaces using Java, .NET and C++ that analyze BIM construction documents and generate interactive 3D worlds for project and product visualization and configuration. You will be developing web services that execute client requests and plug-in DLLs that interface with 3rd party design applications from Autodesk and other BIM software vendors. Reporting to the Lead Software Engineer, you will take a key role on a talented multi person team and work on the development and enhancements to Openings Studio. You'll write a large amount of code, design, communicate ideas to the team, implement and ultimately be able to step in and handle any component or the entire life cycle of the process. We have a fast-moving environment where you might have multiple projects -- new development, upgrades, enhancements, etc. You'll use a wide range of programming skills in completing these tasks.

Requirements

  • Strong understanding of application security concepts for Internet technology, architecture and protocols.
  • Solid understanding of object-, component- and service-oriented design principles.
  • Understanding of formal software development methodologies (agile or lean preferred).
  • Exceptional interpersonal and communication skills, including the ability to act as a bridge between non-technical users and technical resources.
  • Strong self-motivation balanced with a desire to achieve team goals.
  • Strong analytical thinking & problem-solving skills.
  • Ability to perform against tight deadlines and multi-task effectively.
  • Ability to work effectively with groups of varying technical expertise.
  • Ability to excel at both working independently and in a group setting.
  • Ability to travel (up to 10%).
  • College/University degree (preference for specialization in related curricula such as: engineering, computer science, or related major), or have work experience commensurate with, minimum high school/GED diploma.
  • Minimum of 1 - 2 years of software development experience.
  • Must have C++, Java, or .NET experience.
  • Experience with object-oriented programming in Java, .NET Framework, or similar language.
  • Experience utilizing Visual Studio, Eclipse, or Netbeans IDEs.
  • Experience using a SQL database engine.
  • Proficiency in Microsoft Office tools.

Nice To Haves

  • Experience in development for mobile devices preferred.
  • Experience with 3D computer graphics APIs such as DirectX or OpenGL preferred.

Responsibilities

  • Writing: Java, .NET and native C++ code.
  • Evaluating: Requested changes/enhancements to size requests.
  • Evaluating: Software products to be offered in conjunction with existing products.
  • Evaluating: Development, test and productivity tools.
  • Evaluating: Operating environments required for application usage.
  • Evaluating: Extension of the application onto mobile platforms.
  • Determining: How to incorporate requests into the existing database structure and multi-language codebase.
  • Determining: End user hardware and software requirements for product installations.
  • Developing and/or identifying: Integration of internal and external product design into a cohesive user experience.
  • Developing and/or identifying: Requirements for a requested software change/enhancement.
  • Developing and/or identifying: Automated test capabilities through software design.
  • Developing and/or identifying: Paths from existing to future software architectures.
  • Maintaining: Documentation and coding standards.
  • Maintaining: Up-to-date knowledge of technological advances.

Benefits

  • 401(k) plan
  • education assistance
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service