Job Description
Job Summary:
Create software applications, visualization tools and testing of new technologies to support projects, services and overall CBRE|ESI business strategies.
Principle Duties and Responsibilities:
- Develop software applications that support projects and service offerings. These may be specific to a particular client, project or generally applied to support a business initiative or strategy.
- Create visualization methods and applications.
- Design, code, test, and debug software applications.
- Evaluate and test new technologies and applications.
- Develop prototypes to validate new technologies.
- Provide technical support to internal Application Engineers and System Support Engineers on newly developed technologies or applications.
- Provide support for documentation and learning tools for newly developed technologies and applications, including associated training of both internal and external personnel.
- Assist in troubleshooting project and services related networking issues.
- Provide technical support to complement company IT resources, where and when appropriate.
- Coordinate software releases with stakeholders while following standard DevOps practices
QUALIFICATIONS To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
EDUCATION and EXPERIENCE
Education Requirements
- Bachelor’s Degree in Software Engineering, Computer Science, Computer Engineering, or closely related field, or a two year technical degree in Computer Science or other closely related field; or minimum two years as a Application Engineer with Environmental Systems, Inc.
Preferred Experience: Minimum four years industry experience in developing software or working with analytics programs.
Knowledge Required Knowledge:
- Must possess a working knowledge of at least one high-level programming language, such as: Java or C#
- Must possess a working knowledge of javascript and comfortable with open source frameworks/libraries, such as: Node, Vue, React, or Angular
- Must possess a working knowledge of designing and executing software deployment automation processes
- Must possess a working knowledge of Kubernetes and containers
- Must possess a working knowledge of building and maintaining CI/CD pipelines
- Familiar working with different build tools and have the ability to learn new ones, such as:Gradle, NPM, or Yarn
- Familiar writing unit test and integration tests
- Familiar with Azure services, specifically Kubernetes as a Service and Cosmos DB, is beneficial
- Familiar with MongoDb is beneficial
- Familiar with Single Sign On authorization protocols is beneficial, such as: OAuth 2.0 and SAML 2.0
- Familiar with software development tools, such as the Atlassian product line (JIRA, BitBucket, etc.)
- Familiar with different styles of software development processes such as agile
- Familiar with both Windows and Linux server environments
- Familiar with the setup of networks and cloud environments
- Should possess a working knowledge of relational, time-series, and/or tag database systems
- Prior knowledge of building automation systems (HVAC and lighting) is beneficial
Skills
- Must be able to work in a team-based collaboration environment
- Must possess excellent verbal and written communication skills
- Must exhibit a professional attitude
- Must maintain a clean and neat appearance
- Functions
- Fluent in common office software applications including Microsoft Word, Excel, PowerPoint, and Outlook
- Must be willing to travel, including some overnight trips
- Stay abreast of advances in technology and willing to learn how to use new technologies