What are the responsibilities and job description for the Associate Software Engineer position at Clever Devices?
As THE leader in transit technology, Clever Devices' vision is to make meaningful contributions to worldwide mobility. Our goal is to be the leading provider of exciting technology that improves the quality of mobility in communities around the world. We are continuing to grow, and are looking for a Associate, Software Engineer
As an Associate Software Engineer, you will be responsible for designing, implementing (which includes writing programming code), testing, and documenting software systems. This includes developing new features, enhancing existing features and maintaining the existing programming code including performing bug fixes. This position serves as a career entry point into Software Engineering and offers the potential for growth within the Clever Devices organization.
Primary Responsibilities:
- Write maintainable, clean, re-usable, object-oriented, and efficient programming code in compliance with department standards and templates
- Work within source control utilizing branching, merging, proper check-in procedures, and passing of continuous builds to ensure that software is always releasable
- Practice Test Driven Development (TDD) and ensuring that unit tests are created prior to writing programming code and that any programming code is structured in such a way to maximize testability
- Resolve software bugs in the programming code and modify unit tests to prevent future regression
- Perform various types of testing including black box, white box, integration, functional, systems, sanity, smoke, regression, acceptance, stress, load, performance, usability, installation, recovery, security, compatibility, and more on software systems
- Work within the context of department processes and procedures
- Peer review programming code and participate in code reviews
- Learn and understand the technical details of all relevant products and having hands-on familiarity of the system as required
- Contribute fresh, new ideas during developer meetings demonstrating a commitment on-going learning
- Utilizing code coverage, code metrics, and other tools to improve quality of code
- Raise concerns to management and team members
- Any other tasks required by management
Skills Required
- BS degree in Computer Science, Electrical Engineering or a related discipline is required. MS degree a plus.
- Strong written and verbal communication skills
- Entry-level working knowledge and skill with either C#/.NET 4.0 and greater or Java is essential. Skills in both would be an asset.
- Educational or real-time work experience working with a relational database management system such as SQL Server 2008 R2 or greater or Oracle creating some relational database objects (tables, columns, stored procedures, scalar and table-valued functions, etc.)
- Experience with debugging techniques, such as breakpoints, watches, etc.
- Experience with a version control system such as Team Foundation Server or SVN (Subversion)
- Ability to quickly and independently learn about new technologies, business and technical terms and concepts is essential
- Ability to discern between value-added and frivolous work
- Ability to work as part of a team and also individually with a self-starter ("can do") attitude
- Comfortable speaking and interacting with technical and non-technical people
- Excellent research, analytical, and organization skills with an exceptional eye for detail
- Ability to perform work activities according to set priorities and delivery timelines
- Ability to take constructive criticism
- Desire to participate in speaking engagements or be involved within user or other community groups or any other events attended by the department
- Experience working in an Agile environment is an asset
PLEASE NOTE: Clever Devices mandates that all of its employees are vaccinated against SARS-CoV-2 virus (COVID-19), unless a medical or religious exemption applies.