Description
ABOUT THE ROLE:
The Senior Back End Application Developer is responsible for designing, building, and maintaining the server-side aspect of digital platforms, such as event-driven services, web applications and APIs. The role requires a disciplined and strategic individual capable of solving complex technical problems using their strong coding and programming skills to ensure that back-end systems run smoothly and can integrate effectively with other components of a digital platform. The incumbent must possess a deep understanding of back-end programming languages such as Java, Python, or Ruby, and must be proficient in writing quality, optimized, and maintainable code that meets project requirements. They will also have strong communication skills to collaborate effectively with other technical stakeholders such as Applications Development Engineering (Front-End), Database Administrators, Architects, and project teams to drive technical decisions and solutions.
Responsibilities
WHAT THE ROLE WILL DO:
Understand and optimize back-end architecture to enhance overall system performance
Develop optimized code that is reliable, reusable, scalable, secure, and meets maintenance standards in various programming languages
Work closely with front-end developers to support system integrations, enhance application functionality and scalability, and optimize application architecture and performance
Work with technology leaders to understand the business and technical requirements and priorities for back-end systems
Monitor performance and health of services, databases, and other components of back-end systems
Troubleshoot and debug complex application and database systems issues
Keep up-to-date with the latest industry trends and emerging technologies in back-end application development
Plan, design, and execute unit tests or other quality assurance measures to ensure quality
Train digital platform users in the best practices of maintaining web applications and APIs
Document the design and implementation of application software
This position is not eligible for sponsorship for work authorization now or in the future, including conversion to H1-B visa.
This position has a hybrid work schedule with three days in the office and the option for working remotely two days.
Job duties include contact with other employees and access confidential and proprietary information and/or other items of value, and such access may be supervised or unsupervised. The
Company therefore has determined that a review of criminal history is necessary to protect the business and its operations and reputation and is necessary to protect the safety of the Company’s staff, employees, and business relationships.
Qualifications
Education
Bachelor's degree in Computer Science, IT or a related field. In lieu of a degree, at least 7 years of experience in application development or application engineering
Skills and Experience
4-6 years of experience in software development, specifically in application development engineering
Strong programming skills in back-end languages such as Java, Python, or Ruby
Experience with back-end frameworks
Strong understanding of web protocols
Excellent problem-solving skills and attention to detail
Ability to work collaboratively and cross-functionally with technical stakeholders
Preferred
Understanding of Machine Learning in general, and familiarity with the multiple classes of Machine Learning.
Understanding of Convolutional Neural Networks and how they are used in Image Processing applications.
Experience with Computer Vision and Image Processing in general.
Technical Skills
Programming Languages
Version Control Tools
Cloud Technologies & Platforms
Web Services & APIs
Continuous Integration and Continuous Deployment (CI/CD)
Automated Testing Tools
Containerization
Secure Coding Standards
Database Management Systems
Software Development Lifecycle (SDLC) Methodology
DevOps Methodology
Code Prompt Engineering
Software Testing & Quality Assurance Methodologies & Tools