As a Software Engineer, you will work closely with the Engineering team to innovate, research and develop code following coding standards and adhering to designs supporting internal business requirements and/or external customers.
Essential Duties and Responsibilities
The following duties are normal for this position. This list is not to be construed as exclusive or all inclusive. Other duties may be required and assigned.
- Designs, documents, develops, tests, optimizes, and maintains software systems for use by internal staff and external customers.
- Creates scripts for the automation of internal processes and reporting.
- Uses experience from a wide variety of platforms (Windows, Mac, Linux) and technologies (e.g., ASP.net, DotNetCore, Angular SQL, HTML, CSS, database design, streaming data platforms and systems, Kafka, and other languages and technologies as necessary) to accomplish goals.
- Performs basic maintenance and system administration on application servers.
- Follows industry best practices, leveraging appropriate software design patterns .
- Reviews and provides feedback on product requirements, visual designs and testing plans.
- Communicates and coordinates activities with engineering departments including Product Management, Quality Assurance, DevOps and other engineering teams.
- Provides technical product improvement suggestions to improve quality, performance, maintainability.
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, skills, and abilities required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
- Bachelor’s degree in computer science, information systems, computer engineering, systems analysis or a related discipline, or equivalent work experience.
- 2+ years of experience using C# & MVC patterns.
- 2+ years of experience with SQL Server.
- 2+ years of experience developing secure, RESTful APIs.
- Experience with Microsoft Azure is a plus.
- Working knowledge of agile software development life-cycles.
- Excellent analytical and problem-solving skills.
- Strong, clear written and verbal communication skills.
- Experience with Docker is a plus.
- Experience with mobile platform development (iOS and Android) is a plus.
- Forward Thinking - Anticipates how individuals and groups will react to situations and information and plans accordingly. Anticipates the consequences of situations and plans accordingly. Notices trends in the industry or marketplace and develops plans to prepare for opportunities or problems. Anticipates possible problems and develops contingency plans in advance.
- Drives Performance - Develops challenging but achievable goals. Maintains commitment to goals in the face of obstacles and frustrations. Finds or creates ways to measure performance against goals. Has a strong sense of urgency about solving problems and getting work done. Creates momentum and drives behavior change when necessary.
- Adaptability - Adapts to new ideas and initiatives across a wide variety of issues or situations. Adapts interpersonal style to highly diverse individuals and groups in a range of situations. Supports major changes that challenge traditional ways of operating. Anticipates change in order to adapt own plans and priorities.
- Fosters Teamwork - Assumes additional responsibilities to facilitate the achievement of team goals. Seeks input from other team members on matters that affect them. Shares all relevant information with others.
- Open + Transparent Communication - Recalls others' main points, taking them into account in own communication. Checks own understanding of others' communication (e.g., paraphrases, asks questions). Elicits comments or feedback on what has been said. Maintains continuous, open and consistent communication with others.
- Technical Expertise - With guidance, completes common tasks, which present limited difficulties. Reads standard documents to extract key information. Assists team in carrying out complex tasks.