Job Description:
6Simplex is looking for experienced Python GIS developers for design and implementation of high performance and scalable Server side GIS based analytics and ETL components as part of 6Simplex’s products and services suite.
Experience
3+ years hands-on experience building GIS applications using Python.
Educational Qualification
- Bachelor’s or Master’s degree in Computer Science or related disciplines (BCA, MCA, Computer Science/Studies, Software Engineering)
Requirements
The right candidate for a Python GIS Enterprise Developer position at 6Simplex must have
- Strong knowledge and understanding of software engineering principles, frameworks, OOD, and ability to understand and implement design patterns
- Enough knowledge of the Server side to know where and how all the pieces of the puzzle fit and why (think APIs, Security, Standards, Protocols, Patterns)
- Understanding of basics of Geographical Information Systems and ability to utilize functionalities and SDKs offered by commercial and open source GIS on Server and Desktop platforms.
- Knowledge of current trends in Enterprise software design, architecture and web services (especially REST)
- Understanding of Data with all its baggage (think SQL, data models, databases, i/o, knowing when to and when not to move data, etc)
- Good understanding of code versioning tools, such as Git, and ability to use code repository services in daily work
- An unexplainable urge to strictly follow Python coding standards
- Good verbal and written communication skills in English and verbal skills in Hindi
- Ability to explain things to technical and non-technical audiences
- Motivation to be a self-directed team player who thrives in a frequently changing environment
- Curiosity about all things Design
- A preference for a positive and healthy work environment
Responsibilities
At 6Simplex, a Python GIS Developer will be responsible for
- Building scalable, reliable, high-performing GIS Server side applications using Python and supporting libraries
- Assisting in defining software architectures. This would require collaboration with team leads to explore existing systems, determination of areas of complexity and potential risks to successful implementation and creation of new designs
- Following Python coding standards and building appropriate unit tests, integration tests and deployment scripts for applications or APIs
- Communicating frequently with the client to share progress
- Working closely with Product Managers, Architects, UX Engineers, QA Analysts for continuous improvement of the product
- Writing design specifications, based on architecture finalized by the team.
- Constantly striving to improve software engineering skills and enhancing them beyond technical areas, for the benefit of the product, team, and organization
- Maintaining overall product and technical knowledge and sharing expertise within and across team and organization.