Senior Software Engineer
The
Senior Software Engineer position involves taking a lead role in the design, implementation, configuration, and maintenance of proprietary clinical research software products. This requires a seasoned professional proficient in Java, angular, microservices, micro Front Ends, unit testing, and building reusable components. The responsibilities encompass ensuring the seamless integration of Automatic CI/CD processes and utilizing DevOps practices. The ideal candidate should also bring experience with NoSQL databases and SQL Server technologies. This role demands strong technical skills, effective communication abilities, and a track record of successful software solution delivery.
DUTIES & RESPONSIBILITIES-
Full Stack Development Proficiency: Demonstrated hands-on expertise in designing, coding, testing, and debugging web applications using Java, Angular, Node.js, SQL, and .NET.
-
End-to-End Development Capability: Ability to develop both front-end client and back-end server software.
-
API Development: Design, develop, and maintain robust and scalable APIs. Ensure seamless integration with front-end applications and other services - within a Cloud Architecture.
-
CI/CD Expertise: Proven experience in CI/CD processes using tools such as Azure DevOps, Jenkins, etc. Work closely with DevOps teams to establish robust CI/CD pipelines, automate deployment processes, and ensure seamless software releases. Advocate for and implement infrastructure as code (IaC) practices to streamline development and deployment workflows.
-
Frameworks and Technologies Competence: Working knowledge of JSP, Spring Core, Spring Boot/Microservices, and Service-Oriented Architecture (REST/SOAP).
-
Cloud Technologies: Design and build cloud-native applications by employing containerization (specifically Docker) and orchestration (utilizing Kubernetes). Harness the capabilities of leading cloud services (Azure, or Google Cloud) to enhance scalability, reliability, and resource optimization.
-
Security Best Practices: Adherence to industry best practices for secure coding and continuous learning to stay updated on evolving security threats.
-
Code Integrity and Reviews : Uphold coding standards and implement best practices to ensure code quality. Conduct thorough and constructive code reviews, offering valuable feedback. Take an active role in mentoring junior developers, fostering a culture of continuous improvement in code quality and maintainability.
KNOWLEDGE & EXPERIENCE
Education:-
Bachelor of Science degree in Computer Science or equivalent education and work experience is required.
Experience:-
Over 7 years of professional software development experience, demonstrating a strong emphasis on designing and implementing complex systems.
-
UI Development Experience: Previous experience in crafting UI solutions using Angular, React.
-
Operating System Versatility: Experience in working across both Linux and Windows environments.
-
Database Mastery: Proficient in working with both relational databases (SQL Server) and NoSQL databases (e.g., CosmosDB, Elasticsearch).
-
Container Technologies Proficiency: Hands-on experience with container technologies like Docker and Kubernetes.
Credentials:
Knowledge and Skills:-
Exhibit proficiency in multiple programming languages, such as Java, Python, JavaScript, or .NET.
-
Possess solid expertise in both frontend (Angular) and backend (Node.js, .NET, etc.) development frameworks, databases, and cloud technologies.
-
Showcase in-depth knowledge of cloud-native concepts and hands-on experience deploying applications on platforms like AWS, Azure, or Google Cloud.
-
Display a strong understanding of microservices architecture, along with proficiency in containerization (Docker) and container orchestration (Kubernetes).
-
Demonstrate excellent problem-solving skills and the ability to diagnose complex technical issues, providing effective solutions.
-
Communicate effectively, possessing the capability to explain technical concepts to both technical and non-technical stakeholders.
-
Exhibit familiarity with security best practices, authentication/authorization protocols, and data protection.
-
Familiarity with agile development methodologies and tools (Azure DevOps, Git, etc.) is expected.
-
Possess a passion for continuous learning and staying abreast of technological advancements
-
Collaborative Team Player: A flexible team player with a proactive "get-it-done" attitude.
-
Adaptability and Quick Learning: Ability to thrive in a rapidly changing environment and quickly adapt to new technologies.
-
Analytical and Design Excellence: Strong analytical skills coupled with a keen eye for design and development.
li9Q62Y6ym