Job Title: Senior Software Engineer
About the Role:
This is a challenging and rewarding role for a highly skilled software engineer who wants to make a real impact in the industry. You will work with a talented team of developers, data scientists, and analysts to design, develop, and deploy cutting-edge software solutions for a variety of industries.
About You:
To be successful in this role, you will need to have a strong foundation in computer science, excellent problem-solving skills, and the ability to communicate complex technical ideas to both technical and non-technical stakeholders. You will also need to be passionate about staying up-to-date with the latest trends and technologies in the field.
Key Responsibilities:
* Design, develop, and maintain cloud-based AI applications using a full-stack technology stack to deliver high-quality, scalable, and secure solutions.* Collaborate with cross-functional teams to define and implement analytics features and functionality that meet business requirements and user needs.* Utilize Kubernetes and containerization technologies to deploy, manage, and scale analytics applications in cloud environments, ensuring optimal performance and availability.* Develop and maintain APIs and microservices to expose analytics functionality to internal and external consumers, adhering to best practices for API design and documentation.* Implement robust security measures to protect sensitive data and ensure compliance with data privacy regulations and organizational policies.* Continuously monitor and troubleshoot application performance, identifying and resolving issues that impact system reliability, latency, and user experience.* Participate in code reviews and contribute to the establishment and enforcement of coding standards and best practices to ensure high-quality, maintainable code.* Stay current with emerging trends and technologies in cloud computing, data analytics, and software engineering, and proactively identify opportunities to enhance the capabilities of the analytics platform.* Collaborate with DevOps and infrastructure teams to automate deployment and release processes, implement CI/CD pipelines, and optimize the development workflow for the analytics engineering team.* Collaborate closely with and influence business consulting staff and leaders as part of multi-disciplinary teams to assess opportunities and develop analytics solutions for clients across a variety of sectors.* Influence, educate, and directly support the analytics application engineering capabilities of our clients.
Requirements:
* Bachelor's or master's degree in computer science, engineering, or a related technical field.* 4+ years of professional hands-on experience in web development, programming languages, version control, software design pattern, infrastructure and deployment, integration and unit testing implementation.* Strong computer science fundamentals in data structures, algorithms, automated testing, object-oriented programming, performance complexity, and implications of computer architecture on software performance.* Strong knowledge in designing API interfaces.* Knowledge of data architecture, database schema design, and database scalability.* Experience working according to agile principles.* Strong interpersonal and communication skills, including the ability to explain and discuss complex engineering technicalities with colleagues and clients from other disciplines at their level of cognition.* Curiosity, proactivity, and critical thinking.* Ability to collaborate with people at all levels and with multi-office/region teams.