Senior Software Engineer
Shifa Tameer-e-Millat University
Published Date: • Islamabad, Pakistan (On-Site)
Description
Shifa Tameer-e-Millat University is seeking a highly skilled Senior Software Engineer with a minimum of three years of experience to join its dynamic technical team. The ideal candidate will have comprehensive knowledge in software design and architecture, system design, and development of robust applications. This role focuses on creating scalable and efficient software solutions by utilizing expertise in data structures, algorithms, distributed systems, API design, and database management. The engineer will work within a collaborative environment, contributing to technical discussions, performing code reviews, and continuously improving software quality through automated testing and CI/CD pipelines. The Senior Software Engineer plays a key role in driving end-to-end application development and supporting cloud computing initiatives. Although this position does not directly manage a team, it requires strong technical mentorship skills and the ability to guide junior engineers through complex design and development challenges. The candidate must demonstrate proficiency in object-oriented analysis and design, UML modeling, and DevOps practices to ensure high standards of software delivery and operational excellence within the university’s software projects.
Responsibilities
- Design and architect software systems by applying principles of software design, architecture patterns, and system design methodologies.
- Develop, test, and maintain scalable applications using efficient data structures and algorithms tailored for specific use cases.
- Build and maintain distributed systems that ensure high availability, fault tolerance, and performance.
- Design and develop RESTful APIs and integration services that support seamless communication between systems.
- Create and optimize database schemas, manage data storage solutions, and implement database management best practices.
- Leverage cloud computing platforms to deploy, monitor, and scale applications effectively.
- Implement continuous integration and continuous deployment pipelines to automate builds, tests, and releases.
- Conduct thorough code reviews to ensure adherence to coding standards, quality, and security guidelines.
- Provide technical mentorship and knowledge sharing to less experienced developers to foster skill development and improve overall team capabilities.
- Develop and execute automated testing strategies, including unit, integration, and regression tests, to ensure reliable software delivery.
- Use UML modeling and object-oriented analysis and design (OOAD) techniques to document software architectures and design decisions.
- Collaborate with cross-functional teams including product management, quality assurance, and operations to deliver software solutions that meet business requirements.
Experience
3 Years
Apply By
Required Skills
- Software design and architecture
- System Design
- Data Structures and Algorithms
- Distributed Systems
- API Design and Development
- Database Design and Management
- Cloud Computing
- CI/CD And DevOps
- Automated Testing
- Code Review And Technical Mentorship
- UML Modeling
- Object-oriented analysis and design (OOAD)
- Version control systems
Nice to Have Skills
- Microservices Architecture
- Containerization