Title:
Software Engineer – Backend (Python)
About the Role:
Our team is responsible for building the backend components of the MLOps platform on AWS.
The backend components we build are the fundamental blocks for feature engineering, feature serving, model deployment and model inference in both batch and online modes.
What you’ll do here
• Design & build backend components of our MLOps platform on AWS.
• Collaborate with geographically distributed cross-functional teams.
• Participate in on-call rotation with the rest of the team to handle production incidents.
What you’ll need to succeed
Must have skills:
• At least 3+ years of professional backend web development experience with Python.
• Experience with web development frameworks such as Flask, Django or FastAPI.
• Experience working with WSGI & ASGI web servers such as Gunicorn, Uvicorn etc.
• Experience with concurrent programming designs such as AsyncIO.
• Experience with unit and functional testing frameworks.
• Experience with any of the public cloud platforms like AWS, Azure, GCP, preferably AWS.
• Experience with CI/CD practices, tools, and frameworks.
Nice to have skills:
• Experience with MLOps plaBorms such as AWS Sagemaker, Kubeflow or MLflow.
• Experience with big data processing frameworks, preferably Apache Spark.
• Experience with containers (Docker) and container platforms like AWS ECS or AWS EKS.
• Experience with DevOps & IaC tools such as Terraform, Jenkins etc.
• Experience with various Python packaging options such as Wheel, PEX or Conda.
About Codemonk
We are a product engineering company that empowers other startups and enterprises by building simple and elegant software solutions. Through our expertise in the domains of AI, Blockchain, and Enterprise Applications we have helped brands such as Unilever, IndiaMART, GreytHR, Fyle, Skylark Drones, etc to craft world-class products and improve their business. We are churning out amazing software for our clients located across the globe from our headquarters at Bengaluru.
Codemonk is on a mission to transform the way industries work by leveraging the power of AI, Blockchain and IoT. There is something special when you know that every line of code that you write impacts thousands of human lives!
By joining us you can expect newness and challenges every day. As a member of the team, you will be part of shaping the company's future fuelling the growth and defining the culture.
Similar jobs
Integration Developer
Job Description
Roles and Responsibilities
- Design, Code, test, debug, implement and document complex WSO2 sequences.
- Monitoring and logging tool stacks - Splunk/ELK/Prometheus, Grafana 4 Design, Code, test, debug, implement and document complex WSO2 sequences.
- Perform Build activities for WSO2 ESB Middleware integration, involves writing XSLT, ESB coding, configuration, and Analysis activities.
- Trouble shooting various problems in different stages of development using logs files, Traces and Log Analyzer.
- Responsible for understanding the requirement, solution design, coordinate the development and testing activities (end to end)
- Guide the team regarding WSO2 platform best practices, framework, reusable artefacts and ensure code quality and timely deliverables.
- Work with functional and technical customers to determine solutions that drive additional business value.
- Work with Github, Azure Devops and CI tools to automate dev, build, deployment and testing.
- Good knowledge in messaging brokers: WSO2 Message Broker, Apache Kafka.
- Monitoring the server (Monitoring logs and WSO2 metrics).
- Desired Candidate Profile
Desired Candidate Profile
- Candidate must have minimum 2+ years of hands-on experience in WSO2, preferably with WSO2 certification.
- Extensive experience in Integration by using WSO2 Product Stack (API Manager 2.6/3.x, Enterprise Integrator 6.5 and Identity Server 5.7.0)
- Experience in Implementing APIs in WSO2 EI and On-boarding APIs into WSO2 API Manager
- Experience in WSO2 API Manager for designing API facades and designing and implementing API Proxies.
- Hands-on experience in designing and developing high volume web services using API Protocols and Data Formats (REST, JSON, SOAP & XML).
- Must have hands on experience / knowledge with CI tools to automate dev, build, deploy.
- Experience in programming languages: Java, JavaScript, Python
- Experience in on boarding web applications into WSO2 Identity Server for authentication and authorizatio
Qualifications
- Minimum of a Bachelor's or Master’s degree in Computer Science, or a related four-year degree.
- 4 years of hands on experience in Integration
- Immediate joiners with 5 to 10 years of experience.
- Should have team leading experience.
- Should be keen to work as a Developer.
- Java, Spring boot and Design patterns are key areas where they should be excellent.
- Good communication skills is a mandate.
- Should be willing to work on alternate Saturdays (10 AM to 4:30 PM).
- They will have to relocate to Chennai.
- Strong SQL skills, Postgres SQL database knowledge.
- Cloud Experience in deployment (CI/CD)
- Unit Test case
- Angular – good to have
Responsibilities:
• Take on complex problems that span multiple components and teams.
• Independently own one or more multiple modules, which include: requirement analysis, design, development, maintenance & support
• Write extensive, efficient code to address complex modules that handle the interaction between multiple components.
• Rapidly iterate to add new functionalities and solves complex problems with simple and intuitive solutions
• Produce architecture with clean interfaces, that are efficient and scalable
• Participate and contribute to architectural discussions
• Solve production issues. Investigate and provide solutions to minimize the business impact due to the outage
• Continuously improve performance metrics of modules you own.
• Collaborate effectively across teams to solve problems, execute and deliver results
Requirements:
• Experience: 3+ years
• A Bachelor's or Master's Degree in Computer Science
• Software engineering and product delivery experience, with a strong background in algorithms
• Experience in architecting & building real-time, large-scale e-commerce applications
• Experience with high-performance websites catering to millions of daily traffic is a plus
• Excellent command over Data Structures and Algorithms
• Experience with web technologies, Go/Java/Python
• Language: GO or Python
• Strong expertise in DS and Algo
• Strong leadership skills - have experience mentoring, building products from scratch or incumbent in design and architecture.
• Have worked in the scaling of the system right from scratch.
• Someone worked in small user base to a large user base and wrote optimized code
• Both HLD and LLD
7+ years of experience with Design, development & architecture.
- Experience in software development with minimum 3 plus years of architecture experience.
- Experience in Core JAVA 8
- Experience in Java J2EE, Microservices
- Experience in Java - Spring, Java - SpringBoot, GCP , Hibernate,JDBC
- Experience in Multi-threading, Performance and Scaling is a plus
- Have used the RDBMS and NoSQL databases like MySQL/Oracle, MongoDB, Cassandra, Neo4J Risk for production ready software’s
- Cloud Native application design experience is a plus
- CICD – Release Pipeline experience
- Experience in application of principles of Architecture Design
- Experience building large scale, high performance distributed systems
- Strong understanding of modern development techniques and processes such as Dev Ops /Cloud
- Promoter of Agile/Scrum, TDD and CI/CD best practices
- Analyzes, designs, programs, debugs and modifies software enhancements and/or new products used in local, networked or Internet-related computer programs. (Code must be used in core version of applications available for sale commercially.)
- Interacts with Delivery managers and/or users to define system requirements and/or necessary modifications.
- Participates in software design meetings and analyzes user needs to determine technical requirements.
- Write technical specifications based on conceptual design and stated business requirements.
- Writes code, completes programming and performs testing and debugging of applications using current programming languages and technologies.
- Completes documentation and procedures for installation and maintenance.
- Trains and communicates with internal Client Training, Client Relationship and Sales teams on systems application.
- May be responsible for developing or executing project plans, budgets and schedules and for documenting work and results.
- May deliver informational and decision-seeking presentations to technical and business groups to internal and/or external audiences.
Technical Skills Required:
Experience in cross platform development with strong knowledge on Node.js .Experience on implementing NFRs but not limited to Performance, Scalability, Availability, Maintainability and Security Good understanding on CICD process Knowledge of Micro services and respective architecture design principles and scalability best practices.
Experience to work in a Global delivery environment Experience implementing Cloud and or Hybrid Cloud solutions Experience .
developing APIs against database technologies .
(MySQL, Postgres) Proven experience working with Agile methodologies for delivering software Experience with Open Source work management tools JIRA, Jenkins, and GitHub.Strong background in Logic and Algorithms Perform analysis, design, programming, and implementation on systems and procedures to solve complex business problems
Location : Remote-Anywhere from India as permanent work from home option available
Required Skills:
• Strong coding experience in Python and Flask Web Framework.
• Information retrieval – Web Scraping.
• Experience with NoSQL data storage like MongoDB.
• Good knowledge of Asynchronous task schedulers like Celery
• Experience working with large scale databases and storage.
• Knowledge of Javascript with Node.js is a plus.
• Knowledge of working with various front end technologies and how various websites are built. Sound understanding of Asynchronous Programming in python like AsyncIO
Role- Software Development Engineer-2
As a Software Development Engineer at Amazon, you have industry-leading technical abilities and demonstrate breadth and depth of knowledge. You build software to deliver business impact, making smart technology choices. You work in a team and drive things forward.
Top Skills
You write high quality, maintainable, and robust code, often in Java or C++ or C#
You recognize and adopt best practices in software engineering: design, testing, version control, documentation, build, deployment, and operations.
You have experience building scalable software systems that are high-performance, highly-available, highly transactional, low latency and massively distributed.
Roles & Responsibilities
You solve problems at their root, stepping back to understand the broader context.
You develop pragmatic solutions and build flexible systems that balance engineering complexity and timely delivery, creating business impact.
You understand a broad range of data structures and algorithms and apply them to deliver high-performing applications.
You recognize and use design patterns to solve business problems.
You understand how operating systems work, perform and scale.
You continually align your work with Amazon’s business objectives and seek to deliver business value.
You collaborate to ensure that decisions are based on the merit of the proposal, not the proposer.
You proactively support knowledge-sharing and build good working relationships within the team and with others in Amazon.
You communicate clearly with your team and with other groups and listen effectively.
Skills & Experience
Bachelors or Masters in Computer Science or relevant technical field.
Experience in software development and full product life-cycle.
Excellent programming skills in any object-oriented programming languages - preferably Java, C/C++/C#, Perl, Python, or Ruby.
Strong knowledge of data structures, algorithms, and designing for performance, scalability, and availability.
Proficiency in SQL and data modeling.
We are seeking a lead Python Developer to lead the backend efforts and, in the process design, develop, and deploy its customer centric applications.
The person will have the opportunity to design and build an early stage, rapidly evolving platform from scratch and carry out these primary responsibilities -
Optimize components for maximum performance across multiple devices and browsers
Write performant REST APIs for both internal and external consumption
Build micro services and their deployment process
Work with problems of scale, leveraging technologies that are distributed in nature.
Perform code reviews
Required qualifications and must have skills
Excellent analytical and problem-solving skills
Proven-deep-expertise with Python programming (4+ years of hands-on experience in Python and backend development)
Building performant and scalable applications from scratch
Experience in working with frameworks like Django, Flask, etc.
Experience with building APIs and services using REST, SOAP, etc.
Experience with any RDBMS and strong SQL knowledge
Comfortable with Unix / Linux command line
Object-oriented concepts & design patterns
Sytem and database desinging skills
Nice to have Skills
Knowledge of other programming languages beyond Python
Familiarity with managing infrastructure on AWS/GCloud
Experience with working with/building data analytics pipleline
Familiarity with NoSQL databases
Good understanding of Docker and container platforms like Mesos and Kubernetes
Security-first architecture approach
Application benchmarking and optimization
Interpersonal Attributes
You are driven by the impact your work creates
You can answer the why behind any technological choice you make
You can work independently as well as part of a team
## Please apply if you have experience working on Trading Applications, all others would be automatically rejected ###
Our Core team develops connectivity software for low latency communication with derivatives exchanges all over the world, as well as real-time position and risk limit monitoring. The team's expertise is also relied upon by other C++ development groups to produce high-quality libraries and frameworks for their application development. We have a high degree of freedom and responsibility to produce technologically advanced solutions to demanding real-world problems.
From joining you will have ownership on a diverse set of projects that have a direct impact on trading performance. You will work closely with highly skilled colleagues who share your enthusiasm and deep knowledge of C++, Linux and network protocols, and share your hunger to learn more.
What We Are Looking For
- An experienced Modern C++ developer (C++17/20), with minimum 5 years experience and proficiency with C++ templates.
- A developer, who designs code to push every performance boundary.
- Excellent written and verbal communication skills.
- Ability to solve new and unfamiliar problems quickly and creatively.
Ideal Experience Would Include
- Knowledge of multiple exchanges.
- Ultra low latency design.
- Template metaprogramming.
- Network programming experience.
- Python.
What We Offer
- A great engineering environment whereby technology is key to our success and a C++20 code base.
- Great friendly, informal and highly rewarding culture.
- Fast growing global firm with plenty of opportunities where you will have significant impact.
About Us
Our approach to trading is scientific and technology driven. Tight integration between trading and software development, relying on cutting edge infrastructure is core to our success. Our teams of C++, Python, C# and FPGA developers are responsible for our in-house applications, ranging from the world's lowest latency execution systems, through web-based user interfaces, to tools to interrogate multi-terabyte data sets.
From the very beginning, Ally has believed that the right people united by the right mission can redefine the possible
Ally is a B2B SaaS startup. We enable teams to focus, align and achieve goals, with strong employee engagement. Our OKR solution is ridiculously easy to use and scalable to startups and larger teams.
We believe in being where the work happens. Ally is well integrated with the tools and products that we already use in our daily workflows. Further, you can access it from the web and mobile. Ally’s Insights identifies problems and helps the team make the necessary changes to achieve the goals on time.
We are looking for a Lead Software Engineer to join our Ally Engineering Team in Chennai, India.
What does a lead software engineer do at Ally?
As a lead software engineer, you will be the technical lead for a team that focuses on building software applications that scale well. You will play a significant role in shaping our software architecture that provides measurable customer value. You understand both technology and business to know the right tradeoffs to make. You will be a technical mentor for your team members. You will work closely with your peers, managers, product, design and operations teams to create solutions that meet business requirements. You will drive engineering and operational excellence across Ally. You will collaborate with other engineers to surface common pain points, develop solutions and evangelize best practices.
Qualifications
- 7+ years of professional software engineering experience building customer-facing web and/or mobile applications
- Strong coding skills using Ruby, Java, C/C++, Scala (or equivalent programming language)
- Excellent knowledge of Data Structures and Algorithms
- Bachelor or Master degree in Computer Science or a related discipline
- Experience working in an agile environment
- Self-starter, quick learner and passionate problem resolver
- Excellent debugging and troubleshooting skills, with an enthusiastic attitude to support and resolve customer problems
- Good oral and written communication skills
- Above all, an insatiable desire and ability to learn
Nice to have skills:
- Experience with large-scale SaaS applications
- Experience building web and mobile applications
- Experience designing services on top of cloud infrastructure like AWS, Azure, etc
- Knowledge of Ruby on Rails
- Prior experience as a technical lead
Additional Information
Benefits
- Ownership and autonomy to drive customer and culture initiatives
- Centrally located in the city; right next to Metro station
- Opportunity to get mentored and mentor junior engineers
- Competitive salaries
- Paid time off
- Medical insurance