In order to achieve agility in software development, there is a need to ensure that the knowledge generated is seamlessly shared among the teams involved. Different contexts face unique contextual motivators and challenges towards achieving efficient knowledge sharing in software development firms. Overcoming these challenges starts from understanding the contextual nuances at play in the environment, in which knowledge sharing is desired. With increased need for ubiquitous and on-the-go information needs in agile software development projects, understanding the need for effective knowledge sharing platforms is important. The general scarcity of empirical studies has culminated into lack of in-depth global or local insights on knowledge sharing. This research investigates the different contours of knowledge sharing in a software development context in South Africa. Quantitative data collected using a questionnaire with closed-ended questions were analysed using an interpretive and deductive approach. Findings of this research reveal that job security, motivation, time constraints, psychological factors, communication, resistance to change, and rewards are core factors for knowledge sharing in software development projects. Compared with the global context, this research is aligned with other findings with new additions on the grouping of factors influencing knowledge sharing in software development projects. The study discusses the types of knowledge considered useful to share, presents appropriate ways of sharing such useful knowledge and articulates how different types of knowledge are shared in the South African context. This research contributes to the current debate on challenges in knowledge sharing within software development projects in developing world contexts and discusses how software development companies may ensure that triple constraints (time, cost and scope) are overcome.