Job Description
Location: Karachi, Pakistan
Salary Range: PKR 250,000 – 350,000 per month (depending on experience)
Position Summary:
We are seeking a Senior C# Software Engineer with 8+ years of experience to join our engineering team. The ideal candidate will be a highly skilled, motivated professional with a deep understanding of C# programming, software architecture, and the full software development lifecycle. This role offers an excellent opportunity to contribute to the development of cutting-edge applications, work on enterprise-level systems, and be part of a dynamic, fast-paced team.
As a Senior C# Software Engineer, you will lead the design and development of complex software systems, provide technical guidance to junior developers, and work closely with cross-functional teams to deliver high-quality solutions. You will be responsible for ensuring the scalability, performance, and reliability of the software products.
Key Responsibilities:
Software Design & Development:
- Lead the design and development of scalable, maintainable, and high-performance software solutions using C#, .NET Core, and ASP.NET.
- Write clean, efficient, and well-documented code, following best practices for object-oriented design and development.
- Architect and build back-end services and APIs, ensuring high availability and fault tolerance.
- Implement business logic, data models, and workflows in line with project requirements.
Code Review & Mentorship:
- Conduct regular code reviews and provide constructive feedback to junior developers.
- Guide and mentor junior and mid-level developers, ensuring adherence to best practices and coding standards.
- Encourage continuous improvement and learning within the team.
API Development & Integration:
- Design and implement RESTful APIs and web services for integration with other systems and platforms.
- Work on API consumption, ensuring efficient data handling and secure communication.
- Utilize tools like Swagger/OpenAPI to document and communicate API specifications.
- Database Management:
- Work with SQL Server, MySQL, or PostgreSQL to design and manage databases.
- Write complex SQL queries, stored procedures, and optimize database performance.
- Design database schemas, tables, and relationships based on application needs.
- Testing & Quality Assurance:
- Develop and maintain unit tests, integration tests, and perform automated testing using frameworks like xUnit, NUnit, or MSTest.
- Work with QA engineers to ensure comprehensive test coverage and identify issues early in the development cycle.
- Debug and troubleshoot issues in both development and production environments.
- Performance Optimization:
- Continuously monitor and improve the performance of web applications, APIs, and database queries.
- Use profiling tools and implement optimizations to reduce latency and improve throughput.
- Address bottlenecks in both front-end and back-end systems.
- Continuous Integration & Deployment (CI/CD):
- Implement and maintain CI/CD pipelines using Jenkins, Azure DevOps, or GitLab CI for automated builds, testing, and deployment.
- Ensure smooth integration of code into the main branch and ensure timely releases.
- Collaboration & Agile Development:
- Work closely with Product Managers, Designers, and other developers to deliver features and functionality in an Agile environment (Scrum/Kanban).
- Participate in sprint planning, backlog grooming, and daily stand-ups.
- Communicate progress, challenges, and technical solutions effectively with cross-functional teams.
Requirements & Skills
Technical Skills:
- Proficiency in C#, .NET Core, ASP.NET, and MVC framework.
- Strong experience with RESTful API design, JSON, and Web Services.
- Solid knowledge of Object-Oriented Design (OOD) and design patterns (e.g., Singleton, Factory, Strategy).
- Extensive experience with SQL Server or other relational databases (MySQL, PostgreSQL).
- Familiarity with Entity Framework or Dapper for ORM-based data access.
- Experience with front-end technologies like JavaScript, HTML5, and CSS3 is a plus, especially with frameworks like React.js or Angular.
- Knowledge of Unit Testing frameworks such as xUnit, NUnit, or MSTest.
- Familiarity with CI/CD tools like Jenkins, GitLab CI, or Azure DevOps.
- Experience with Cloud Platforms (e.g., Azure, AWS) is a plus.
- Knowledge of microservices architecture and distributed systems is a bonus.
Desired Skills & Attributes:
- Leadership & Mentorship: Ability to lead projects, provide technical guidance, and mentor junior developers.
- Problem Solving: Strong analytical and problem-solving skills with the ability to work on complex, high-stakes issues.
- Collaboration: Excellent communication skills and the ability to collaborate effectively with cross-functional teams.
- Attention to Detail: Focus on delivering clean, efficient, and scalable solutions with attention to detail.
- Agile Methodologies: Experience working in an Agile environment, particularly with Scrum or Kanban.
- Adaptability: Ability to quickly learn and apply new technologies, frameworks, and tools.
- Time Management: Strong time management and organizational skills, with the ability to manage multiple tasks and meet deadlines.
Benefits:
- Competitive salary based on experience.
- Health insurance and other standard company benefits.
- Opportunity to work with cutting-edge technologies and grow your career.
- Professional development opportunities including certifications and training.
- Flexible working hours and a dynamic team environment.
- Career progression opportunities as part of a rapidly growing organization.
Benefits & Perks
Explore More Opportunities
Find similar jobs and career opportunities
