Software Engineer

ASSA ABLOYNew Haven, CT
5h

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 software applications that guide users through the entire process of managing projects from estimating, detailing, and procuring doors, frames and related hardware through to project completion. You will take a key role on a talented multi person team and work on the development and enhancements of software applications. 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. Your specific responsibilities will include: Writing: Java code, HTML, Javascript, SQL. Evaluating: Requested changes/enhancements to size requests. Software products to be offered in conjunction with existing products. Development, test and productivity tools. Operating environments required for application usage. Extension of the application onto mobile platforms. Determining: How to incorporate requests into the existing database structure and multi-language codebase. 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. Requirements for a requested software change/enhancement. Automated test capabilities through software design. Paths from existing to future software architectures. Maintaining: Documentation and coding standards. Up-to-date knowledge of technological advances. Location: preferred location for this position is Phoenix, AZ. Remote locations may be considered for extraordinary candidates. Relocation is available.

Requirements

  • A Bachelor's degree, coding bootcamp, in Engineering, Computer Science, or related major, and/or up to 4 years of relevant experience
  • Experience with object oriented programming in Java
  • Experience with Java frameworks such as Spring and Hibernate/JPA, as well as Servlet containers like Tomcat, Jetty, or WildFly
  • Proficiency with Java builds tools such as Maven and Gradle
  • Proficiency with Git
  • Experience utilizing Eclipse, IntelliJ, or Netbeans IDEs
  • Experience using a SQL database engine and accessing data via JDBC or an ORM, as well as writing SQL
  • Solid understanding of object-, component- and service-oriented design principles
  • Exceptional interpersonal and communication skills, including the ability to act as a bridge between non-technical users and technical resources
  • The ability to perform against tight deadlines and multi-task effectively
  • The ability to work effectively with groups of varying technical expertise
  • Excel at both working independently and in a group setting
  • Strong self-motivation balanced with a desire to achieve team goals

Nice To Haves

  • Experience with GWT and specifically SmartGWT frameworks, SmarGWT Version 12 or 13 with enterprise level features preferred
  • Both client and server side development experience a plus
  • Experience contributing to software packages sold to external customers, including responding to input from customers
  • Understanding of formal software development methodologies, preferably agile
  • Experience using an ORM
  • Experience with Linux servers/command line
  • Experience with public cloud vendors (AWS, GCP, Azure)

Responsibilities

  • Writing Java code, HTML, Javascript, SQL
  • 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
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service