Principal Software Engineer
Lahore, Punjab () 7 Positions
Job Description
- Demonstrate strong programming background in data structures, algorithms, and design patterns, writing high-quality, maintainable, and efficient code.
- System Design and Distributed applications architecture, including Microservices Architecture, SOAP APIs, and Rest APIs.
- Contribute to software systems' design and architecture, ensuring scalability, performance, security, and compliance.
- Conduct code reviews, optimize code, and assess latest technologies for suitability.
- Enhance existing code, collaborate with DevOps for CI/CD pipelines, and maintain technical documentation.
- Strong DBMS concepts, analyzing complex issues, and executing tests, while staying updated with industry trends and evaluating their applicability.
- Knowledge of multi-threaded and distributed applications, ability to coordinate in designing algorithms, and integrate software components.
- Integrate Software components and third-party programs.
- Train and guide junior developers in best coding practices.
- Adhere to company policies and procedures.
We are looking for
- Education: BS (CS, SE, CE, IT)
- Experience: 5-6 Years
Skills
- Prior experience in JVM technologies like Spring, JQuery, React/ Angular/Vue or any JS framework would be a plus.
- Strong knowledge of multi-threaded and distributed applications.
- Rest APIs, Microservices, Oauth2, SAML.
- Database design and SQL Queries.
- Application containerization and orchestration.
- Good Analytical Skills.
- Proficiency in Java programming language.
- Strong leadership skills
- Good team player having interpersonal and communication skills.
- Strong problem-solving skills, Self-Motivated, Out of the Box thinking.
- Ability to multitask and manage workload efficiently.
- Deliver products at aggressive timelines.
- Dedication, Integrity, and reliability.
- Ability to perform well under pressure.
Specific Tools, Technologies, or Equipment Skills
- Core Java Language Concepts, J2EE, Java, Kotlin, Swift, JSP, JDBC, Spring, Spring Boot and HTML/CSS, React/ Angular/Vue.
- Rest APIs, GRPC, Microservices, Oauth2, SAML.
- Automated tools and techniques for development e.g., JProfiler, PMD, Ant, Aspect-J, Junit. Maven, Gradle.
- Concepts about software management tools and techniques e.g., concepts about software configuration management tools and techniques.
- Understanding of full SDLC, GOF Design Patterns, Architecture and Design Patterns (SOA, ORM, MVC), J2EE Design Patterns, OOP, UML, ERD Diagrams.