Designation: Software Development Engineer
Years: 2-5 years
Key Responsibilities
- Collaborate extensively with engineers, customers, and senior management to build and ship key features.
- Help architect and build internal libraries, standards, and frameworks to drive engineering-wide consistency.
- Develop modular and consistent architectures across products, including documentation of approach and test cases.
- Design and implement software solutions that leverage SQL and NoSQL databases and customizable no-code/low-code workflow applications.
- Develop and maintain technical documentation including architecture diagrams, design documents, and system documentation.
- Work with cross-functional teams to identify technical requirements and deliver scalable solutions.
- Provide technical guidance and mentorship to team members where applicable.
- Conduct code reviews to ensure adherence to coding standards and best practices.
- Continuously evaluate new technologies and tools to improve engineering efficiency.
- Ensure scalability, reliability, performance, and security of software solutions.
- Analyze, troubleshoot, and proactively identify potential issues in systems and applications.
Requirements
Must Have
- BS or MS degree in Computer Science or equivalent.
- 23 years of software development experience. Candidates with slightly lower experience may also be considered, though the role designation may not be at the Senior level.
- Strong foundation in Object-Oriented Design, Data Structures, Algorithms, Operating Systems, and Software Engineering principles.
- Experience in full-stack development with Java.
- Experience working with microservices and REST API architectures.
- Experience designing and developing solutions using SQL and NoSQL databases.
- Hands-on experience with Neo4J database.
- Familiarity with Nginx for load balancing, reverse proxy, or web serving.
- Understanding of CI/CD pipelines and deployment practices.
- Exposure to HA architectures and ELK stack.
- Experience designing multi-threaded applications.
- Familiarity with system traffic handling, scalability, and performance optimization.
- Basic knowledge of software security concepts such as authentication, authorization, and data protection. Limited exposure through at least one project is acceptable.
- Familiarity with Agile development methodologies.
- Willingness to work across the stack and quickly learn new technologies.
Good to Have
- Experience with caching technologies such as Redis or other Apache ecosystem tools.
- Exposure to no-code / low-code workflow application development.
- Familiarity with Angular framework and front-end services.
- Cloud experience and familiarity with modern cloud storage and infrastructure tools.