|началоstart ~ софтуерът-и-азsoftware-and-i ~ биографияcv/resume ~ библиотекаlibrary ~ снимкиphotos ~ детскиkids' ~||english|
az()svilendobrev _ com
i've been making software for 30+ years, on 3 continents, as projects of all sizes and levels of impossibility. Seen many different terminals, languages, designs, projects, customers, teams, organisations and cultures, and have met even more different attitudes.
So i found that the more interesting and difficult part is.. the people, while all the technicalities are somehow solvable. Software is just a limited, twisted way of communicating knowledge between people, through space and time - and it's people who cause anything. Making software is a game of cooperation, now vs future-and-past, exercise in correct thinking, with all the participants being translators - and Trust being the most important feature.
And i found i can successfully mediate between the extremes - western and eastern thinking, technical & applicational, experts & newbies, gears & art, real & virtual.. i put passion in my work and do care for it. i do trust people.. and thus weigh them. i work With, not just For. i fight For, not Against. i do work, not time. Putting toys at github.com/svilendobrev.
So.. i make (software) projects from ideas, people and software. Be it possible or not, regardless what has to change - software, organisation, people, or.. me. As Life is Change..
Shortage of people? No. Inefficient thinking, still trying to store human knowledge about reality in primitive languages. Reality.. is very complex. Complexity is fought with structure. Structure, within knowledge, means languages - specific for the notion, domain, product, project, task, and even people.
i love idea-generating, nice software, mentoring, team making, steep changes, cultural diversity, organisational building, improvisation. i can help to efficiently make effective software, and tune the community and culture to allow for it. i make languages that talk the patterns of the task. And attitudes that empower people. So one can start solving the real issues.
So.. Hands-on software mentor, leader, advisor, “playing-trainer”, architect, CTO, hacker... programmer. Friend? Could be. There’s more about me, software and Life at www.svilendobrev.com. Or dare read the brisk intro...
An Impossible Dream project? What about?
now in Varna, Bulgaria. Bulgarian and Australian citizenship
fluent Bulgarian, Russian, English
born 1970 Bulgarian, family+kids; sworn non-smoker, mountaineer, biker
the Team as live, self-tuning instrument for translating knowledge into software; organisational patterns, cultures and health ; leadership; proximity + communication patterns, de-hierarchization
mentoring, teaching, inside-trenches organisational analysis and coaching... and learning ; philosophy of software
knowledge and technology management, requirements engineering, audit + analisys - of code, workflows or organisation
methodologies, agile CrystalClear vs CMMi/formal process; outsourcing + distributed global development; mental gears, cultural differences, pair-programming, context-switching, attention to detail, selective stupidity
making of languages; using general languages as carriers of much higher-level specific ones; generating code; self-interpreting objects; grammars, compilers, interpreters, virtual machines; interfaces, protocols, frameworks and aspects
usability engineering, use-cases; user experience, interaction, interfaces; analysis perspectives - technical + people, end-user + organisational; human-machine systems in general
testing as art; version, configuration and project management, life-cycles, estimation, negotiation, risk and resistance-points; documentation workflows, traceability, trackability; licensing
business analysis in many domains – software itself, media, content/metadata, accounting, HR, chips-design, bureaucracy/paperwork, betting, CAD/CAM, mechanics, physics, banking, hardware, maps, graphics, DTP, simulation
modeling, architecture, flows - data, code, events and time ; analysis; optimisation; efficient vs effective; persistency, databases, messaging, bi-temporal data+code, semantic relations; sync/async; client-server vs standalone vs distributed
toolkits/frameworks: django react flask ; sqlalchemy; qt wx gtk kiwi; STL; many more
platforms: linux, android, web, desktop, dos; apache; many compilers, assemblers, ..
paradigms: object-oriented, functional, event-, rule-, dependency-driven, markup, behavioral, ..
persistency: couchdb, sql - sqlite postgr esql ; rdf, sparql, key-value; corba
tools of the trade: vim, linux, vcs: bzr/git/hg/svn/cvs; unittest,nose,selenium; trac,redmine, jira, wikis in general
my own: python course, coding style, methodology, many UIs, python clone, persistency layers, tools
www as runtime env - service vs library; api-design; digital signatures, smartcards; search, accessibility, multi-linguality
devOops.. or more. Get job done, be part of it - software, hardware, or psychology; fix the dripping tap, machine, drivers or paperwork; teach, hack, negotiate, find a way, fight for it.. It's all one jazz.. Engineering
reverse engineering; search, anonymity; protections; social nets, digital identity
reflecting, exchanging ideas, having opinions, Do-It-Yourself, repairing stuff
artistic design and layout; apply knowledge across fields; making toys and playing
caring about what i do. With extreme attention to detail – which assumes freedom + no noise... and nothing fake
Find a friend to be your senses.
Software is actually about people, not about machines.
Languages are your tools. Make them if no suitable ones.
One can't make decent tool/thing if has never been user of it.
Do not try to outsmart the user.. which can be yourself.
If you make something usable by idiots, only idiots will use it.
Association is a great thing - trust your common intuitional sense.
Trust is the essence of software. Machines trust 100%, while people.. don't. How much trust or distrust you can handle?
www-web makes the village global, so anyone is at near-zero distance. But never zero. And sometimes one needs just that - warm touch - or good kick..
First rule of Leadership: it's all your fault.
Manager's choice: change People or.. Change people.
With time, places change people. Other way happens noticeably only while coming in - or switching on.
Stop coding Reality into bytes, grow up and empower yourself with domain-task Specific Languages.
Software is a (twisted) way of communication. Sometimes to yourself from Tuesday.
growing Swiss (~automated) receivables management company.. FinTech. 8 ppl software team, remote, 4y-old in-house software. Somewhat chaotic.. "software-mirrors-the-org".. Duh.. No more coding. Just.. the other 90%. Try develop the team.. and "educate" management and other depts. Find out dev and system bottlenecks.. (like architecture, issues, non-dev tasks) then "buy" time-resources to fix, automate or turn into operational applications. Play product-owner. Stop the everybody-telling-tech-do-that-now. Streamline workflows, manage issues, bring in (teaching through) reviews, testing, cleanups, CI/CD, UX studies, etc. Even architecting sometimes. Try speed up system (and the team) without breaking it. Lesson - Remote does not help teaming.. in-person meetings bi-weekly are not enough.
branch of a German semiconductors company. Caring for software teams in Varna and Sofia (8 people) and their capabilities and good "health"; representing software perspective in complex projects; mentoring and teaching people from various departments and backgrounds; pushing cultural, methodological and technological improvements - group- or company-wide, helping hands-on. Deeply embedded or application software, from assemblers to python, requirements engineering tools, chip-description and chip-testing tools, functional safety, methodology, organisation, management.
branch of a German semiconductors company. Teaching 8+ people, mostly beginners/non-programmers
Dutch nearshoring company. Doing python courses - beginners, intermediate, advanced - for 20+ people - and noticed fast-growth pains.. so.. Did a study, interviewing in trenches or management, on ways of work, culture, technology, relations, teaming, pains, funs, etc, and suggested a few changes towards healthier agile patterns, attitudes and culture.
dozen new people, most straight from the uni... to become (python) programmers.. and a real software Team.. in about 4 months. Impossible? depends.. As long as proper mentality gets in, the rest is.. up to them. Maybe i did it. Meanwhile, auditing some core software and translating various APIs into python. (update 2019: they are all senior softwarers now)
Put data in database. As is. Let it flow wherever, on its own. React on changes. Focus on user-stuff.. Personal and Usability - centralization is a tool, not goal. Two of us - a friend doing iphone app, and me doing architecture, protocols (weird "http-rpc-with-memory" over couchdb replication), the servers+web-app (17k python), rich android app (12k java)
wanna learn? have projects? c all. It will be interesting. All software making is actualy learning - just noone admits it.. (didn't work. A chicken-and-egg - eventual students want ready+paid projects, companies with projects want ready teams)
a generic social python-backend-integration framework (facebook, twitter, others. Using flask, celery, nose, selenium). in a team of 7, in a place that opposes any change. Done.
redefine search and decision in human terms.. Tech lead, philosophy, analisys, invention; mentoring young entrepreneur
brightBird.com - movie search+notification social service. Match+import metadata, user patterns, group+classify. Architecture, backend design+coding, data handling; 3ppl, 5months; 10k python/django, SQL, SPARQL
notionery: wild idea- a garden to grow your personal notions - remember, learn, express yourself, in your own terms - and translate to and from all else, incl. past versions. Few months of concept digging.. Semantical web5.. Too far fetched
moodyTV: content-discovery platform, many metadata sources; shown at IBC2010-Amsterdam. Android thick online+offline client app; web-app and desktop/qt app, generated api. Personal channels, profiles+suggestions, manual faceted filters, sharing saved filters/searches. (3ppl, 6months, 8k python, 20k java).
UI-engine in python, embedded, linux/gentoo, media-player device; medium company, very entangled work / repository structure.. A bit extreme independence - Viva la liberte! - yeah, but without communication, software ain't edible..
CSend'2009 for bozosoft.biz: desktop end-user client for official Customs.bg B2B document flow and exchange protocols - message threading, templates etc (python, 7k, 4 months, FSMs, soap, XML-signatures, smartcards, windows/gtk)
HOR - enterprise Human Resources + payroll management system, 90k python, sql, wxpython; 8 people 2.5+years; replacing long legacies and representing an ever-changing, extremely complicated and entangled legislation and relations, expected product life >10 years – hence max flexibility and expressive power. Domain notions like values and payflows, bi-temporal data and code, multilingual values, ... made several internal languages. Leading it all.. extreme Agile Crystal-Clear methodology; architecting, requirements, mentoring, project-management, inventing, coding..
STC- Singapore Turf Club's betting terminals+kiosks renovation – big-money global outsourcing effort; 2 separate end-user-applications: 130k C++, 15k python, 2k java, 6people, 2+years; the team spent about 6 months overall onsite in Singapore, 2 in Germany. Talking to CORBA, payments, realtime. Me being core dev, architect, team leader-manager, all relations to other 3 teams - WN-Konstanz, WN-Singapore, STC; difficult cultural mix and communication.. e.g. Requirements gathering through 3 hops which do not talk to each-other.. Lots of future-proofing, refactoring, wrappers and code generation. Documentation flow. The most difficult + rewarding project so far - Hey, my team survived crossing 4 cultures, and "end-users said they like your software"! (update 2018 - more than 1000 machines live..)
topologic al parametric modeling language + control of mechanical technology - in CAM/CAE plant system; python
graphical 2D backend API from python into C++; fix + wrap equation-solver cassowarypy
a drawing framework - 2D hierarchy, MVC, polygon-processing, C++,python; visualise GIS map-data from arcSDE
organisational patterns - success in changing company culture - both as technology and people communication
new compiler for analog/mixed-signal Verilog-A/AMS, merge and maintain legacy compilers; testing and automate build; C, C++, sh,perl,make, lex,yacc,pccts; sun hp linux; full waterfall, requirements, autogenerate documentation - framemaker
tasting another language-culture-continent-society
learning about software made industrially - "pipelines"+ CMM4, and teaching about software made efficiently
made Sceti / Finix - personalizable accounting engine, in human terms+documents, user languages for reports, templating, operations, access-control. wave-calc. 70k C++ btrieve novell, 3 ppl. Change human-workflows. Still used.
prototypes of statewide medical record system, doctor's workplace. “obj-oriented” structural documentation flow
accounting software - rule-based correctness, ledger conversion, account-scheme on-the-fly-translation, automat ion
LAN maintenance - PCs, novell/dos/win/os2, Clipper, C/assembler
Missile-launcher simulators - 3D real-time animated simulation of combat for soldier training - real weapon, overhead projecting on huge screen, airplane/vehicle models, trajectories, trainer workplace; C++, assembler, physics, 3ppl
large accurate digital maps: make, compress, view, radar/GPS; i386/penpad
Danube river map+radar – GUI+map technology; prototype for Gabchikovo channel navigation
DTP software +Fonts - reverse-engineer, customize, use various DTP systems, make fonts+tools.. make all work in cyrillic
with 2 schoolmates: accounting over modems, clipper, C, assembler
set-based unification and Prolog interpreter - thesis, 500 Loc prolog ; Editor in C/asm and other stuff
M.Sc. in Electrical Engineering / Computer Science
advancing course: 5 years taken in 4, twice more disciplines - all excellent
"advancing education" class of 4 students, 7 years taken in 4, gold medal
curated collection of audio records of tales, songs, theaters from LPs, CDs, radio.. and all the machinery behind it.. some old frozen version at http://gramofonche.chitanka.info
making and hosting a community forum of Sladka voda alterna tive school and supporting the school
see the code-link below for my open-source software
do-it-yourself.. the machinery of my site, and my home - www.svilendobrev.com/napravisam
teaching reverse-engineering/analysis – a few essays – lookup +svd, deadlisting, +fravia
e-mail: az()svilendobrev _ com
my site: www.svilendobrev.com
work, software, and me: svilendobrev.com/rabota
code, toys and projects: svilendobrev.com/rabota/mysoft.html ; github.com/svilendobrev
cv-biography-resume: svilendobrev.com/rabota/cv - printable-pdf - brisk intro -- linkedin.com/in/svilendobrev
|'2008-2019 ~ началоstart ~ софтуерът-и-азsoftware-and-i ~ биографияcv/resume ~ библиотекаlibrary ~ снимкиphotos ~ детскиkids' ~||az()svilendobrev _ com|