The Software Engineer is a technical member of the development team. They are responsible for designing, coding, and reviewing the work done in the team. They participate in all aspects of the agile software development lifecycle, from inception to support. Software Engineers embrace continuous personal improvement in their own learning process and team improvement. Software Engineers demonstrate competence in technical decision making and problem solving. They independently manage their contributions and proactively raise impediments. They fully understand the processes and support adoption by the team. Software Engineers are a positive influence on the culture of the team and help other team members meet their objectives.
Essential Duties & Responsibilities
- Contributes independently to multiple functional and technical areas within a product.
- Designs and scopes new features.
- Creates artifacts/documents that are valuable to the team.
- Continued ownership of technical growth including:
- Product and business knowledge
- Problem solving skills
- Technical knowledge
- Process knowledge
- Acts as a good citizen within the team technically and culturally.
- Ensures quality of code written or reviewed.
- Adheres to quality/technical team standards.
- Reviews code according to their expertise.
- Ensures that their deliverables meet the scheduled commitments.
- Makes decisions in their area of responsibility that help maintainability, reuse, and performance.
- Initiates conversations to get the support/clarity necessary to carry out a task.
- Constructively challenges existing perspectives and proposed solutions inside the team.
- Proactively assists in accomplishing team-level technical goals.
- Initiates knowledge sharing with other team members.
- Evaluates alignment of work with strategic initiatives and company goals.
- Able to diagnose issues and provide solutions for multiple functional and technical areas within a product.
- Can independently frame problems and perform relevant research for small (1 team-sprint) effort.
.
Qualifications Include
- Recommended 4+ years of relevant experience
- BA/BS required, Technical Diploma in Computer Science, MIS, or IT or a related field preferred.
- Able to work / be available a couple hours a day that overlap with US Business Hours is a must.
Skillset
Required
-
Front-end technology: Expertise in front-end technologies, including JavaScript / Typescript, CSS3 and HTML5 and third-party libraries such as Angular.
-
Development languages: Knowledge of server-side programming languages including C# /.Net,
-
Database and cache: Familiarity with DBMS technology, including SQL Server
-
Web Services: Experience with SOAP, REST, JSON.
- Good writing and communication skills
- Ability to visualize a proposed system and be able to build it.
Preferred
-
Dev Ops: Comfortable to use DevOps environment(Ex: Ansible, Terraform)
Nice to Have
-
Server: Linux experience is nice to have.
-
Mobile development technology: Experience with Xamarin and/or WPF is nice to have.
-
Development Tools: Eclipse IDE, Dev Studio is nice to have.
-
Testing Tools: Experience with Selenium is nice to have.
-
Basic design ability: Ability to design UI/UX for the given design
Nice to Have
-
Server: Linux experience is nice to have.
-
Mobile development technology: Experience with Xamarin and/or WPF is nice to have.
-
Development Tools: Eclipse IDE, Dev Studio is nice to have.
-
Testing Tools: Experience with Selenium is nice to have.
-
Basic design ability: Ability to design UI/UX for the given design