Job Summary/ Objectives:
The Back End Engineer codes and develops server-side systems to support core product functionality and offering. He identifies security risks and ensures coding standards meet security requirements. He executes specifications and features for the next iteration of the product based on user needs and feedback, and continuously integrates code changes. He provides support to the quality testing teams.
A Back End Engineer has a good amount of experience in a well-defined area. He works to support other developers in the team. Developers at this level can deliver medium to large tasks to production, working independently if required. They use best practices to ship high-quality code and continue to push their knowledge.
He works in a team and is proficient in programming languages required by the organization. He is familiar with software development tools and standards.
The Back End Engineer is innovative in developing a range of product designs and solutions. He supports others in the team and is confident in communicating ideas to the team in a clear and compelling manner.
General Duties and Responsibilities:
- Participate in discussions with development teams and product managers to understand user requirements.
- Develop scalable, performant, and secure back-end applications and servers for creating highly functional web applications.
- Develop efficient and secure Application Programming Interfaces (APIs).
- Develop server-side engines and services.
- Integrate external software libraries and APIs into existing projects.
- Integrate multiple data sources and databases into one system.
- Perform integration testing as part of the integration process.
- Deliver high quality, maintainable, and scalable code.
- Execute improvements and code re-factoring to back-end codebases.
- Assist in enhancing existing software components and adding new features.
- Participates in benchmarking and enhancing the performance of the product.
- Suggest approaches that balance security, stability, and performance needs.
- Staying well-informed about the current developments in the world of software development, learning about emerging server-side technologies, and updating project leaders regarding the same.
- Perform any other tasks as assigned by supervisors, demonstrating flexibility to meet evolving business needs and challenges.
Required Education and Experience:
- Bachelor's degree in computer science or a related field.
- Minimum of 2-3 years of relevant experience in software development.
- Experience with server-side programming languages and development frameworks such as C# and .NET Core.
- Experience with web development frameworks such as ASP.NET Core.
- Experience with server-side engines and services.
- Experience with systems integration technologies such as REST APIs, SOAP Webservices, gRPC, and Message Brokers.
- Experience with data storage technologies such as relational databases, NoSQL databases, cache stores, etc.