Junior C# Developer - Software House
A growing, successful Cape Town based Software House, developing Enterprise (nTier) Application Software is currently looking for Junior C# developers to join their team, with the focus on areas like Enterprise, Web, Mobile, Thick Client, Web/REST Services, Relational Databases, NoSQL, Messaging Queues etc.
Mandatory Skills / Abilities required for the Job
- Generalist, with a passion for, and proven track record in the following core competency areas:
§ Front End, Middle Tier, and Database
- Technologies include but not limited to:
§ Exposure to data tier abstraction technologies e.g. .NET Entity Framework will be an advantage
§ Databases – Relational Databases experience necessary (MSSQL)
§ Operating System (O/S) – WINDOWS.
§ Exposure to any of the popular Testing Tools preferable.
§ Xamarin advantageous
Personal Attributes / Character traits required for this job
- Delivery focused - Be deadline driven and adheres to Sprint deadlines.
- Team Player – must be able to work as part of a team.
- Self-Starter – Be able to work independently and contribute effectively to the team.
- Flexible/adaptable/approachable and willing to work in rapid changing, high delivery environment
- Keen attention to detail.
Education and General Working Experience
- Ideally an IT Diploma or related Degree will be an advantage but is not essential.
- Minimum requirement is Matric with at least 1-2 years solid C# on the job work related development experience. Remuneration package will be tailored according to relevant technical experience.
- Exposure to Mercurial, Bamboo, continuous integration an advantage.
- Good Object orientation is a must.
- Experience working in an Agile development environment preferred but not essential.
- Basic understanding of design patterns and their application
Key Roles and Responsibilities
- Developing application software for any client product and / or customised client solutions.
- Development extends to Front-end, Middle Tier and Databases and includes Presentation Layer, Business Logic, Data, Services, Databases and Scripting.
- Maintenance, debugging and problem-solving of existing software products and / or custom client solutions.
- Review product requirements in order to give development estimates and product feedback.
- Unit testing / integration testing Features developed.
- Technical documentation that shares knowledge effectively.
- Setting up new infrastructure environment for products and / or customised client solutions.
- Maintenance and updates to the existing infrastructure environment for the products and / or customised client solutions.
Day to day duties and responsibilities include the following:
- Developing software and writing scripts as per specifications or requirements provided.
- Unit testing / Integration testing.
- Working collaboratively as part of an Agile development team:
§ Implementing business requirements as created and prioritised by the Product Owner.
§ Deliver according to the Definition of Done requirement.
§ Collaborating with other developers, testers and business analysts as required, including pair programming.
§ Participate in technical planning and implementation meetings.
§ Participate in Sprint Planning Development Cycles every 2 weeks.
- Participate in, and present demos where required.
- Participate in the Daily Stand-up meetings.
- Participate in code reviews.
- Participate in sessions with QA and business analyst to meet the delivery deadlines.