Confer with business analysts and architects to gather application requirements. Meet regularly with business users, analysts, and architects to understand functional needs, user experience expectations, and system specifications. Use tools like MS Office, Confluence, Lucidchart, and Jira to document and clarify requirements ensuring the development team has clear guidance. Consult with architects and engineers on software system design and maintenance. Collaborate with technical architects and engineers to discuss system design, data flow, user interfaces, backend architecture, and long-term maintenance strategies. Evaluate cost constraints and select appropriate tools and frameworks for implementation. Design, develop, and modify software systems. Architect data flows, APIs, and database schemas. Develop software using Python, PySpark, SQL, Shell scripts, and frameworks like MapReduce, NumPy, and Pandas. Perform unit testing, code reviews, and push code to repositories for collaborative development. Utilize cloud platforms such as Microsoft Azure and Databricks for deployment and data management. Develop and direct software system testing and validation. Execute comprehensive unit, integration, and system testing to identify and resolve defects. Write API documentation and prepare test procedures for QA teams to automate testing processes and ensure software quality. Coordinate with DevOps team on continuous integration and deployment. Work closely with DevOps to configure build pipelines, trigger automated builds on code merges, and deploy applications through testing, staging, and production environments. Use tools like Kubernetes, Docker, and shell scripting for smooth CI/CD operations. Modify existing software to correct errors, enhance capabilities, and improve performance. Investigate and prioritize bugs reported by users. Analyze code and logs to reproduce and fix issues. Periodically optimize code for better performance and implement requested feature enhancements to meet evolving business needs. Assess technical and security risks, suggest and implement solutions. Review code to identify security vulnerabilities and technical risks such as single points of failure or capacity issues. Recommend and apply preventive measures to safeguard system integrity and reliability. Participate in Scrum meetings, daily standups, and weekly status meetings. Engage in Agile ceremonies to report progress, discuss challenges, and align with the team. Present project updates and milestones to customers and management to maintain transparency and collaboration. Coordinate with offshore team, conduct knowledge sharing sessions, and assist with application incidents. Lead knowledge transfer sessions to keep offshore teams updated on application changes. Track their deliverables, resolve blockers, and provide hands-on support during production incidents to ensure timely resolution and minimize downtime. Manage and mentor a team of two to five data engineers, providing guidance on technical best practices, career development, and initiative execution. Responsible for participation in hiring and performance reviews.
Stand Out From the Crowd
Upload your resume and get instant feedback on how well it matches this job.
Job Type
Full-time
Career Level
Manager