Ivan Sedlak,塞尔维亚伏伊伏丁那省苏博蒂察的开发商
Ivan is available for hire
Hire Ivan

Ivan Sedlak

Verified Expert  in Engineering

Security Developer

Location
苏博蒂察,伏伊伏丁那,塞尔维亚
Toptal Member Since
December 8, 2015

Ivan has over 12 years of professional hands-on experience using a wide range of Microsoft technologies, 主要针对企业web应用, security, internet, and serverless functions. 他以前的职位是在一家私营公司做高级职员 .. NET全栈开发人员、软件架构师和团队负责人. 他主要从事大型项目. Ivan自2015年以来一直与Toptal客户合作.

Portfolio

欧洲金融科技创业公司(数据来源:Toptal)
无服务器架构,Azure函数,算法,api, c#, c#.NET, .NET...
纽约主要电信公司(通过Toptal)
Dependency Injection, .NET Core, Hangfire, ASP.NET Identity, ASP.NET Web API...
纽约主要电信公司(通过Toptal)
IdentityServer 3, IdentityServer 4, OAuth 2, ASP.NET Identity, SAML...

Experience

Availability

Part-time

Preferred Environment

Azure、SQL Server Management Studio (SSMS)、Visual Studio、Windows 10、Node.js, Visual Studio Code (VS Code), Zsh, Bash

The most amazing...

...thing I've coded is a serverless stack of nano and microservices that rapidly scale to the storm of the incoming requests.

Work Experience

Head of Engineering

2019 - 2021
欧洲金融科技创业公司(数据来源:Toptal)
  • Took over the legacy projects for a review and gave feedback to the client about the current status and what can be done to improve it.
  • Designed and implemented completely new serverless architecture based on Azure Durable Functions along with data stores and other relevant infrastructure on Azure.
  • 构建了更容易和更快的请求捕获工具, analysis, debug and replay of the requests once they started coming in large numbers in the live environment as it couldn't be done manually anymore.
  • 帮助团队成员做出架构决策, implementation decisions, 以及实现本身, 与业务和技术方面进行沟通.
技术:无服务器架构,Azure函数,算法,api, c#, c#.NET, .NET, .NET Core, Elasticsearch

领导和高级软件工程师

2018 - 2019
纽约主要电信公司(通过Toptal)
  • Created web API endpoints with highly optimized throughput to support scaling up and scaling out.
  • 优化现有代码库.
  • 使用Redis集群对现有代码库引入分布式缓存.
  • Introduced Dapper lightweight ORM to manually optimize heavy-lifting SQL queries.
  • Made general bug fixes and version updates for packages and/or framework version.
技术:依赖注入; .NET Core, Hangfire, ASP.NET Identity, ASP.. NET Web API,安全,优化,Web API, Redis, OWIN, .NET, C#

Security Lead

2016 - 2018
纽约主要电信公司(通过Toptal)
  • 为SSO设计并实现了内部身份验证端点.
  • Implemented authentication using IdentityServer3 at its core and making it compatible with OpenID Connect, OAuth2, SAML2, WS-Federation, and more.
  • Built a custom solution to suit the business needs along with the different authentication flows based on the subdomain (departments), 2FA, 现有用户从遗留存储迁移到ASP.. NET Identity用户存储、用户存储的管理UI和IdentityServer3.
  • 开发用于密码恢复的自定义流, 将外部提供者的用户链接到内部用户和用户锁定.
  • Used dynamic middleware registration to achieve different behavior of the same deployed application on a different server (domain) to control the authentication flows.
技术:IdentityServer 3, IdentityServer 4, OAuth 2, ASP.NET身份,SAML,身份服务器,OpenID, OWIN, .NET, C#

.NET Web Developer

2016 - 2016
InnoSoft Canada, Inc. (via Toptal)
  • 构建数据库表、关系图和存储过程.
  • Created complex SQL stored procedures to implement advanced scheduling algorithms.
  • Built CSLA.. NET业务对象用于ORM(对象-关系映射).
  • 解决了OWIN中间件实现中的安全漏洞.
  • 创建了web API控制器和动作方法.
  • Implemented Ajax calls to get data from Web API controllers and utilize it in appropriate partial views.
  • Created a view to render SVG vector images based on data and the ability to download it as PNG with transparent background (for printing) or with a custom color background.
技术:算法, CSLA, Scrum, Jira, Microsoft SQL Server, T-SQL (Transact-SQL), LINQ, Web API, ASP.NET MVC, C#, .NET

.NET Security Expert

2015 - 2016
FocustApps (via Toptal)
  • 构建标准化安全模型的后端库.
  • Implemented and designed the code that supports multiple identity providers using OWIN middleware.
  • 设计一个自定义的变化感知延迟加载缓存解决方案.
  • 创建了应用程序和底层数据库审计解决方案.
  • Established standards for other developers to follow to make the solution easier to develop and maintain as well as being more secure.
技术:IdentityServer, IdentityServer 4, OAuth 2, Azure, Kentor, Microsoft SQL Server, LINQ, Entity Framework, SAML, OWIN, C#, ASP.NET

Senior .. NET开发人员|项目负责人|团队经理|软件架构师

2008 - 2015
Chinook Software
  • Created a custom reusable code library for authentication, caching, auditing, and messaging.
  • 为在线信用卡处理构建了自定义Moneris API包装器.
  • 开发和实施定制购物车解决方案.
  • 编程各种功能与先进的自定义功能的复合C1 CMS.
  • 为数据转换、导入和同步编写复杂的SQL Server Agent作业.
技术:Windows,架构,算法,T-SQL (Transact-SQL), LINQ, VB.. NET、c#、HTML5、jQuery、AngularJS、Razor、ASP.NET

Oracle Developer

2007 - 2008
InterSoft
  • 基于BRD设计ER图.
  • 使用Java将Oracle表单从桌面迁移到浏览器内应用程序.
  • 维护和支持现有的Oracle DB实例.
  • 从遗留数据格式导入数据到新的Oracle DB实例.
  • Went on-site and got field experience in problem solving and solutions implementation for remote locations.
技术:数据库,Oracle, Oracle表单

.NET Security Library

这是我在Toptal上做的第一个项目. 我的工作是创建一个后端库,使安全模型标准化. I designed and implemented the code that supports multiple identity providers using OWIN middleware.

一些支持的提供商是Azure AD、自定义SAML idp、ASP.. NET身份登录,以及Facebook. I also designed and implemented a custom change-aware lazy-load caching solution, application, 以及低级数据库审计解决方案, various helpers, and base classes.

The library set a standard for other developers to follow and make their job easier as they could just use the exposed methods and properties, which made their code a lot easier to develop and maintain with one-line solutions to get current user properties, set claims, authenticate, access cached data, register a new user, 授权用户访问资源, etc.

I had a great time working on this project as I enjoy designing the back-end libraries and standards to make developers' lives a bit easier and solutions more maintainable and secure.

.NET Web Development

My initial job was to get familiar with the solution and specific database conventions.

在那之后,我开始与CSLA合作.NET to create business objects that are used for ORM and making Web APIs to expose that data to specific set of security roles.

I also helped developers working on front-end to utilize exposed data using AJAX calls.

Most complex thing I worked on was the advanced scheduler that takes a lot of different things into consideration to determine available places and times and based on selected algorithm makes the scheduling, 创建游戏和分配团队. This was done in pure T-SQL to keep it as close to database as possible to avoid doing a lot of plumbing to get and write the data in CSLA.. NET框架(避免创建大量业务对象). Scheduling works fast and has validations and data corruption prevention built in, 甚至是只读模式(事务不持久化).

我和客户相处得很愉快. The work was well organized, using JIRA and daily Scrum and story grooming meetings. This was the biggest solution I've worked on and also the most complex T-SQL code I've written so far.

由微服务和纳米服务构建的Web API

I implemented synchronous (sync) and asynchronous (async) actions using web callbacks and HTTP(s) Web API using Azure Functions and Azure Durable Functions. The API is composed out of Function Apps which contain one or more HTTP request handlers.

授权和路由使用APIM(类固醇反向代理)处理。. 数据保存在SQL和NoSQL数据存储中,具体取决于用例. 快速扩展能力, good solution design, and overall system stability handled all the spikes in live traffic without increasing the failure rate.

Languages

T-SQL (Transact-SQL), c#, HTML5, SAML, VB.. NET, CSS3, XHTML, JavaScript, Bash, c#.NET

Frameworks

Entity 6, ASP.NET Identity, ASP.NET, ASP.NET Web API, .NET, ASP.NET MVC, OAuth 2, .NET Core, IdentityServer 4, IdentityServer 3, Swagger, Bootstrap, CSLA, Razor, AngularJS

Libraries/APIs

LINQ,实体框架,Web API, OpenID, jQuery, Node.js

Tools

Visual Studio .NET, Postman, Hangfire, Fiddler, Jira, TFS, Git, Dapper, Visual Studio, Oracle Forms, Zsh

Paradigms

对象关系映射(ORM), Dependency Injection, 敏捷软件开发, DRY, Scrum, Serverless Architecture, On-demand Scaling

Platforms

Android, Windows, Azure Functions, Azure, NLog, Azure PaaS, Azure IaaS, Docker, Oracle, Visual Studio Code (VS Code)

Storage

SQL Server Management Studio (SSMS), Microsoft SQL Server, JSON, Redis Cache, DB, Redis, Elasticsearch

Other

Algorithms, Ajax, Architecture, Caching, Security Audits, Security, Data Structures, OWIN, Identity Server, CORS, OpenID Connect (OIDC), Optimization, SVG, Windows 10, Kentor, Payment Gateways, APIs

2009 - 2016

信息技术学士学位

ITS -信息技术学校-贝尔格莱德

有效的合作

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

开始你的无风险人才试验

与你选择的人才一起工作,试用最多两周. 只有当你决定雇佣他们时才付钱.

对顶尖人才的需求很大.

Start hiring